คำถามติดแท็ก code-golf

Code-golf เป็นการแข่งขันเพื่อแก้ไขปัญหาเฉพาะในส่วนที่น้อยที่สุดของซอร์สโค้ด

12
แยกมัน. แต่ไม่ใช่ทั้งหมด!
แรงบันดาลใจจากคำถาม StackOverflow นี้ การป้อนข้อมูล: เราจะรับสามอินพุต: อักขระตัวคั่นที่Dจะแยก ตัวละครIระหว่างสองตัวที่เราไม่สนใจอักขระตัวคั่น (ฉันรู้ว่ามันฟังดูคลุมเครือ แต่ฉันจะอธิบายด้านล่าง) สตริง S เอาท์พุท: รายการ / อาร์เรย์ที่มีสตริงย่อยหลังจากการแยก ตัวอย่าง: Input: D = ',' I = '"' S = '11020199,"Abc ",aduz,,444,bieb,dc,2 ,2222.00,whatever 5dc,222.22,22.00,"98,00","12,000,000",21-09-2018, 06:00,",-,"' Output: ['11020199', 'Abc ', 'aduz', '', '444', 'bieb', 'dc', '2 ', '2222.00', 'whatever 5dc', '222.22', '22.00', '98,00', '12,000,000', '21-09-2018', ' …
11 code-golf  string 

9
เกมการพนันในเทศกาลไหว้พระจันทร์
พรุ่งนี้เป็นเทศกาลกลางฤดูใบไม้ร่วงและด้วยจิตวิญญาณของวันหยุดฉันจะแนะนำเกมการพนันที่เรา (ผู้คนจากเซียะเหมิน ) เล่นในช่วงวันหยุด! กฎระเบียบ เกมนี้เล่นโดยใช้ลูกเต๋า 6 ลูก 6 ด้าน การรวมกันของตัวเลขต่างกันมีอันดับที่แตกต่างกันโดยเน้นเป็นพิเศษทั้งสี่และคน งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นที่จะจัดอันดับมือให้ได้รับ 6 ลูกเต๋า นี่คืออันดับ (ฉันได้แก้ไข / ลดความซับซ้อนของกฎเล็กน้อย): ฉันเดาว่ามีเพียงคนจีนเท่านั้นที่สามารถทำสิ่งนี้ได้! โอเคนี่เป็นคำอธิบายภาษาอังกฤษ 0: 4 fours และ 2 คน 1: 6 fours 2: 6 รายการ 3: 6 ของทุกชนิดยกเว้นสี่และคน 4: 5 fours 5: 5 ทุกชนิดยกเว้นสี่ 6: 4 fours 7: ตรง (1-6) 8: …
11 code-golf  game 

5
Centrosymmetrization น้อยที่สุด
ที่เกี่ยวข้องกัน วัตถุประสงค์:รับเมทริกซ์ของจำนวนเต็มบวกให้เอาท์พุตเมทริกซ์สมมาตรที่เล็กที่สุดซึ่งมี (เมทริกซ์นี้อาจมีจำนวนเต็มบวกที่ไม่เป็นบวก)เอ็มMMMMMM เมทริกซ์ centrosymmetric เป็นเมทริกซ์จตุรัสที่มีสมมาตรการหมุนของคำสั่งที่ 2 นั่นคือเมทริกซ์ยังคงเหมือนเดิมหลังจากหมุนสองครั้ง ยกตัวอย่างเช่นเมทริกซ์แบบสมมาตรมีองค์ประกอบด้านบนซ้ายเหมือนกับด้านล่างขวาและองค์ประกอบด้านบนตรงกลางเหมือนกับด้านล่างตรงกลาง ภาพข้อมูลที่มีประโยชน์สามารถพบได้ที่นี่ เพิ่มเติมอย่างเป็นทางการได้รับเมทริกซ์ผลิตเมทริกซ์จัตุรัสดังกล่าวว่าเป็น centrosymmetric และและไม่มีอื่นใดอีกตารางเมทริกซ์ดังกล่าวว่าNN N M ⊆ N K ติ่มซำK &lt; dim NMMMNNNNNNM⊆NM⊆NM\subseteq NKKKdimK&lt;dimNdim⁡K&lt;dim⁡N\dim K<\dim N AAAคือเซตย่อยของ (สัญกรณ์: ) หากแต่ละค่าปรากฏที่ดัชนีสำหรับคู่ของจำนวนเต็มบางคู่นายก)BBBA⊆BA⊆BA\subseteq BAi,jAi,jA_{i,j}Bi+i′,j+j′Bi+i′,j+j′B_{i+i^\prime,j+j^\prime}(i′,j′)(i′,j′)(i^\prime, j^\prime) หมายเหตุ : เมทริกซ์บางตัวมีวิธีแก้ปัญหาหลายอย่าง (เช่น[[3,3],[1,2]]การแก้ไขตาม[[2,1,0],[3,3,3],[0,1,2]]หรือ[[3,3,3],[1,2,1],[3,3,3]]); คุณต้องแสดงผลลัพธ์อย่างน้อยหนึ่งในโซลูชันที่ถูกต้อง กรณีทดสอบ input example output [[1, 2, 3], [4, 5, 6]] [[1, 2, 3, 0], …

4
ลำดับชุดการเพิ่มที่เพิ่มมากขึ้น
พื้นหลัง ลำดับชุดอดีตที่เพิ่มขึ้นของการสั่งซื้อถูกกำหนดให้เป็นลำดับของชุดจำนวนเต็มซึ่งตอบสนองความต่อไปนี้:S 1 , S 2 , ⋯ , S nยังไม่มีข้อความยังไม่มีข้อความNS1, S2, ⋯ , SnS1,S2,⋯,SnS_1,S_2,\cdots,S_n แต่ละเป็นส่วนหนึ่งที่ไม่ว่างเปล่าของ{ 1 , 2 , ⋯ , N }SผมSผมS_i{ 1 , 2 , ⋯ , N}{1,2,⋯,ยังไม่มีข้อความ}\{1,2,\cdots,N\} สำหรับ ,กล่าวคือชุดที่ต่อเนื่องกันสองชุดไม่มีองค์ประกอบที่เหมือนกัน1 ≤ i &lt; n1≤ผม&lt;n1\le i<nSผม∩ Sฉัน+ 1= ∅Sผม∩Sผม+1=∅S_i \cap S_{i+1} = \varnothing สำหรับค่าเฉลี่ย (ค่าเฉลี่ย) ของเป็นอย่างเคร่งครัดน้อยกว่าที่1}S i S …

5
ติดตามวัตถุในพื้นที่ 2d
ลักษณะ งานของความท้าทายนี้คือการประดิษฐ์โปรแกรมหรือฟังก์ชั่นที่ติดตามวัตถุได้รับในn × nn×nn×nพื้นที่ I / O โปรแกรมของคุณจะได้รับ 3 อินพุตซึ่งอาจใช้วิธีการที่เหมาะสม : nจะมีขนาดเท่ากับด้านข้างของเครื่องบิน (ดังนั้นสำหรับn = 5n=5n=5เครื่องบินของคุณจะเป็น5 × 55×55×5 ) คุณอาจคิดว่าnจะเป็นจำนวนเต็มคี่เสมอ sจะเป็นตำแหน่งเริ่มต้นของวัตถุที่กำหนดเป็นคู่ของ(x,y)(x,y)(x, y)พิกัด Dจะเป็นเวกเตอร์ของคู่ที่สั่ง Dจะเป็นไปตามรูปแบบD=[(d0,t0),(d1,t1),...,(dn,tn)]D=[(d0,t0),(d1,t1),...,(dn,tn)]D = [(d_0,t_0),(d_1,t_1),...,(d_n,t_n)]ซึ่งdkdkd_kจะเป็นหนึ่งของ'N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'สำหรับพระคาร์ดินัลและทิศทาง intercardinal หลักและtktkt_kจะเป็นจำนวนเต็มสำหรับจำนวนของ 'เห็บฯ เมื่อได้รับอินพุตเหล่านี้โปรแกรมของคุณจะต้องส่งออกการติดตามวัตถุในระนาบ กฎระเบียบ เอาท์พุทจะต้องมีขอบเขตของเครื่องบิน เช่น: - 21012 + + ┌─────┐ 2││ 1││ 0││ 1││ 2││ -└─────┘ …

2
ขนมปังขี้เกียจ
ฉันทำงานที่ร้านเบเกอรี่ที่ให้บริการข้าวสาลีข้าวไรย์ข้าวบาร์เลย์ธัญพืชและขนมปังฝรั่งเศส แต่คนทำขนมปังแปลก ๆ เล็กน้อย - เขากองก้อนเรียงตามลำดับแบบสุ่มและบางครั้งก็ออกจากชั้นวางที่ว่าง ในแต่ละวันลูกค้ารายเดิมเข้ามาและขอขนมปังหนึ่งก้อน แต่สิ่งที่ยุ่งยากก็คือเขาเป็น germophobe ดังนั้นเมื่อฉันเติมกระเป๋าของเขาฉันไม่สามารถนำก้อนจากชั้นวางติดกันสองชั้นในการเลือกต่อเนื่อง ใช้เวลาหนึ่งวินาทีในการเดินระหว่างชั้นวางที่อยู่ติดกัน มันเป็นร้านยุ่ง สำหรับการกำหนดค่าแบบสุ่มใด ๆ ของก้อนฉันต้องการลดเวลาที่ใช้ในการรับหนึ่งในแต่ละก้อนที่ไม่ซ้ำกัน ฉันสามารถเริ่มต้นและสิ้นสุดที่ชั้นวางใดก็ได้ หากการสั่งซื้อของวันนี้เป็นW B W G F R Wเส้นทางที่เป็นไปได้0, 3, 5, 1, 4รวมเป็น 12 วินาที:abs(3-0) + abs(5-3) + abs(1-5) + abs(4-1) = 12 ( 1, 2, 3, 4, 5ใช้งานไม่ได้เนื่องจากมีการหยิบขนมปังติดต่อกันจากชั้นวางที่อยู่ติดกัน) หากB W B G B F B …

13
เกณฑ์การให้คะแนน Briscola
บทนำ Briscolaเป็นหนึ่งในเกมไพ่ยอดนิยมของอิตาลี มันเป็นเกมไพ่ที่เล่นเล่ห์เหลี่ยมเช่น Bridge Briscola เป็นที่รู้จักกันดีสำหรับระบบจุดที่แปลกประหลาด ในความท้าทายนี้เมื่อได้รับไพ่สองใบคุณจะแสดงผลไม่ว่าคะแนนแรกจะเพิ่มขึ้นน้อยลงหรือจำนวนแต้มเท่ากันเป็นอันดับที่สองในระบบคะแนนของ Briscola ท้าทาย Briscola เล่นกับสำรับไพ่ของอิตาลี มีไพ่สี่สิบใบในสำรับไพ่ 1-10 ในแต่ละชุดไพ่ทั้งสี่ใบ: ถ้วยดาบสโมสรและเหรียญ เราจะเพิกเฉยต่อความท้าทายนี้ ไพ่ 2 - 7 คือไพ่ที่เป็นตัวเลขและไพ่ 8, 9 และ 10 คือไพ่หน้า อันดับของไพ่จากมากไปน้อยคือ: +------------------------+-------------+ | Cards, by Rank | Point Value | +------------------------+-------------+ | Ace (1) | 11 | | Three (3) | 10 | | …

14
วาดปิรามิดลูกหลาน (เพิ่มเติม)
ท้าทาย กำหนดลำดับของจำนวนเต็มแบบไม่ลบให้สร้างฟังก์ชันที่ส่งออกปิรามิดลูกหลานโดยที่เด็ก ๆ จะเป็นผลรวมของทั้งจำนวนผู้ปกครอง \tผลที่ได้คือเอาท์พุทเป็นสตริงโดยใช้แท็บ หมายเหตุ: ไม่จำเป็นต้องใช้แท็บต่อท้ายในแต่ละบรรทัด 1\t\t2\t\t3\n\t3\t\t5\t\n\t\t8\t\t results in 1 2 3 3 5 8 ผลลัพธ์ที่เป็นทางเลือกสามารถถูกเอาต์พุตเป็นอาร์เรย์โดยใช้ตำแหน่งว่างเป็นช่องว่าง [[1,,2,,3], [,3,,5,], [,,8,,]] ตัวอย่าง: ให้4,5,7,3,4,2เอาท์พุท: 4 5 7 3 4 2 9 12 10 7 6 21 22 17 13 43 39 30 82 69 151 กฎระเบียบ ใช้กฎมาตรฐานของกอล์ฟ อินพุตสามารถเป็นสตริงโดยใช้ตัวคั่นใด ๆ หรืออาร์เรย์ ขึ้นบรรทัดใหม่นำหน้าและต่อท้ายและแท็บได้รับอนุญาต (แต่ไม่จำเป็นตราบใดที่เอาต์พุตเป็นปิรามิดแบบกลับด้าน) …
11 code-golf 

1
ไม่ใช่แค่ตัวต่อสี่ตัวเท่านั้น
ในตัวแปรสี่ตัวต่อปริศนานี้คุณควรใช้มากถึงx x's(และไม่มีตัวเลขอื่น) และชุดปฏิบัติการที่กำหนดไว้เพื่อให้ถึงทุกหมายเลขตั้งแต่ 0 ถึง 100 หากx = 4คุณสามารถใช้งานได้มากถึงสี่4sและคำถามนี้จะกลายเป็นสี่แบบคลาสสิก ตัวต่อ (ยกเว้นคุณสามารถใช้ 4s ได้สูงสุดสี่ตัวแทนที่จะต้องใช้สี่อันอย่างแน่นอน) 1 &lt; x &lt;= 9เราคิด ในรุ่นนี้อนุญาตเฉพาะผู้ประกอบการดังต่อไปนี้: การบวก ( +) การลบ ( -) การคูณ ( *) การหาร ( /) 5/2 = 2.5หมายเหตุนี้เป็นส่วนหนึ่งที่แท้จริงเพื่อที่ว่า การยกกำลัง (เช่น 4 ^ 4) เนื่องจากจะไม่มีสัญลักษณ์พิเศษหากเขียนด้วยมือตามปกติ xsคุณสามารถทำให้จำนวนเต็มใหม่โดยการเชื่อมโยง 4, 44, 444, 4444เช่นคุณสามารถทำให้จำนวนเต็ม นอกจากนี้คุณยังสามารถใช้วงเล็บเป็นหมายเลขกลุ่มเพื่อควบคุมลำดับการประเมินของผู้ดำเนินการ ตัวอย่างเช่นคุณไม่สามารถรวมวงเล็บเข้ากับการต่อข้อมูล(4/4)(4/4) = (1)(1) = …

13
เป็นคนแรกเป็นคนแรก
ท้าทาย งานง่าย รับอาร์เรย์และค่าแรกและสุดท้าย: คืนค่าแรกของสุดท้ายหลังจากที่แรกและสุดท้ายของก่อนก่อนที่สุดท้าย หรือเพียงแค่: รับอาร์เรย์, var1, var2 อาร์เรย์ตัวอย่าง: [var2,, var1,, var2,, var2, var1, var2,] กลับ: ดัชนีของ var2 แรกทางด้านขวาของ var1 แรกที่ปรากฏในอาร์เรย์ [var2,, first var1 ,, var2 แรก , var2 ที่สอง, var1, var2 ที่สาม] ดัชนีของ var1 แรกทางด้านซ้ายของ var2 ล่าสุดที่ปรากฏในอาร์เรย์ [var2,, var1 ที่สอง,, var2,, var2, var1 แรก , var2 ล่าสุด ,] อินพุต …

12
ผลรวมของเมทริกซ์ที่จำลองแบบแล้ว
รับรายการตัวเลข[ a 1 a 2 ... a n ]คำนวณผลรวมของเมทริกซ์ทั้งหมดAᵢโดยที่Aᵢถูกนิยามดังนี้ ( mคือค่าสูงสุดของaᵢทั้งหมด): 1 2 ⋯ (i-1) i (i+1) ⋯ n +---------------------------- 1 | 0 0 ⋯ 0 aᵢ aᵢ ⋯ aᵢ 2 | 0 0 ⋯ 0 aᵢ aᵢ ⋯ aᵢ . . . . . . . . . . …

21
อัพเดตไฟล์ภาษา Minecraft
ใน 1.13, ไฟล์ภาษา Minecraft ถูกเปลี่ยนจากการเป็นรูปแบบคีย์หลายค่าแบบง่าย = เป็นJSON JSON ท้าทาย เขียนโปรแกรมที่แปลงจากรูปแบบดั้งเดิมที่ส่งคืนสตริง JSON อินพุตสามารถใช้วิธีอินพุตมาตรฐานใด ๆ เอาต์พุตต้องเป็น json จากวิธีเอาต์พุตมาตรฐานใด ๆ รูปแบบดั้งเดิมมีบรรทัดที่มีคู่ key = value ตัวอย่างเช่น tile.dirt.name=Dirt advMode.nearestPlayer=Use "@p" to target nearest player build.tooHigh=Height limit for building is %s blocks ควรแปลงเป็นวัตถุ JSON ขนาดใหญ่หนึ่งตัวพร้อม key = value { "tile.dirt.name": "Dirt", "advMode.nearestPlayer": "Use \"@p\" to target …
11 code-golf  game  json 

4
กำหนดฤดูกาล
บทนำ: ในซีกโลกเหนือ (เช่นยุโรปอเมริกาเหนือ ฯลฯ ) ฤดูกาลจะถูกแบ่งออกดังนี้: - ฤดูใบไม้ผลิ:มีนาคม, เมษายน, พฤษภาคม - ฤดูร้อน:มิถุนายน, กรกฎาคม, สิงหาคม - ฤดูใบไม้ร่วง:กันยายน, ตุลาคม, พฤศจิกายน - ฤดูหนาว:ธันวาคม , มกราคมกุมภาพันธ์ ในซีกโลกใต้อย่างไรก็ตาม (เช่นออสเตรเลียอเมริกาใต้ ฯลฯ ) ฤดูกาลจะถูกแบ่งออกดังนี้: - ฤดูใบไม้ผลิ:กันยายน, ตุลาคม, พฤศจิกายน - ฤดูร้อน:ธันวาคม, มกราคม, กุมภาพันธ์ - ฤดูใบไม้ร่วง:มีนาคม, เมษายน, พฤษภาคม - ฤดูหนาว:มิถุนายนกรกฎาคมสิงหาคม ความแตกต่างนี้เกิดจากตำแหน่งของดวงอาทิตย์เกี่ยวกับเส้นศูนย์สูตรซึ่งซีกโลกเหนือและซีกโลกใต้มีฤดูกาลที่ตรงกันข้าม การป้อนข้อมูล: ในการท้าทายนี้เราจะรับอินพุตสองตัว: หนึ่งรายการสำหรับเดือน ( 1 &lt;= m &lt;= …
11 code-golf  number 

1
นักปั่นรถยนต์ออนควิน
ทำควิน แต่ด้วยการบิด คำให้การ ควินพิมพ์รหัส แต่ใส่ตัวอักษรตัวแรกในตอนท้าย (คุณสามารถทำย้อนกลับ แต่รวมถึงบันทึกย่อนั้นในคำตอบของคุณ) ผลลัพธ์นั้นจะต้องเป็นโปรแกรมซึ่งเป็นวิธีการแก้ปัญหา ตัวอย่าง: สมมติว่ารหัสของคุณfoobarทำงานอยู่oobarfซึ่งจะส่งคืนซึ่งจะเป็นอีกโปรแกรมที่ถูกต้อง foobar -&gt; oobarf oobarf -&gt; obarfo obarfo -&gt; barfoo barfoo -&gt; arfoob arfoob -&gt; rfooba rfooba -&gt; foobar กฎระเบียบ รหัสของคุณจะต้องไม่เป็นเอาท์พุทของรุ่นของรหัสของคนอื่นที่ค่อนข้างชัดเจนว่าขโมย รหัสของคุณจะต้องยาวเกิน 2 ตัวอักษร (รหัสย่อนั้นไม่สนุก) รหัสของคุณต้องมีอักขระที่แตกต่างกันอย่างน้อยสองตัว (เช่น: +++ไม่ถูกต้อง) เกณฑ์การให้คะแนน ในฐานะนักกอล์ฟที่ท้าทายรหัสที่สั้นที่สุดจะเป็นผู้ชนะ
11 code-golf  quine 

17
สร้างรายชื่อ Rotonyms 2
คำนาม 2 "Rotonym" เป็นคำที่ ROT13s เป็นคำอื่น (ในภาษาเดียวกัน) สำหรับความท้าทายนี้เราจะใช้คำจำกัดความอื่น: "Rotonym" เป็นคำที่วงกลมเปลี่ยน / หมุนเป็นคำอื่น (ในภาษาเดียวกัน) ตัวอย่างเช่น: 'stable' &lt; 'tables' &lt; 'ablest' 'abort' &gt; 'tabor' 'tada' &gt;&gt; 'data' ความท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ยอมรับรายการพจนานุกรม / คำและพิมพ์หรือส่งกลับรายการคำนามสมบูรณ์ การสั่งซื้อไม่สำคัญ การเปรียบเทียบควรคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ดังนั้นคุณสามารถสมมติว่าอินพุตจะถูกส่งเป็นพจนานุกรมตัวพิมพ์เล็กเท่านั้น ผลลัพธ์ควรแสดงเป็นคำเดียว (ไม่ใช่คู่) และไม่มีการซ้ำซ้อนดังนั้นคุณสามารถสมมติว่าอินพุตไม่มีการซ้ำซ้อน นี่คือรหัสกอล์ฟ ตัวอย่าง ป.ร. ให้ไว้ ablest abort green irk stable tables tabor tata terra vex you กลับ …
11 code-golf 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.