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

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

23
ลำดับวงจรของตัวเลขหลักพร้อมอัตราต่อรองระหว่าง
พิจารณาลำดับต่อไปนี้: 1, 0, 1, 2, 4, 1, 6, 8, 0, 1, 2, 4, 6, 8, 1, 0, 2, 4, 6, 8, 1, 0, 2, 4, 6, 8, 0, 1, ... เลขคู่เริ่มต้นจาก0และจัดกลุ่มเป็นความยาวที่เพิ่มขึ้น พวกเขาจะจัดวนหมายความว่าพวกเขาจะถูกจัดเรียงในลำดับจนถึง8ถึงแล้วขี่จักรยานกลับมาจาก0 1แยกการวิ่งของเลขคู่และมันก็เริ่มต้นลำดับ มาดูกันว่าลำดับนี้เกิดขึ้นได้อย่างไร: 1, 0, 1, 2, 4, 1, 6, 8, 0, 1, 2, 4, 6, 8, 1, 0, …

10
การนับ Fibonacci Orbits
หากเรากำหนดลำดับ Fibonacci-like เป็นf k (n) = (f k (n-1) + f k (n-2))% k , สำหรับจำนวนเต็มkจำนวนหนึ่ง(โดยที่%คือตัวดำเนินการโมดูโล), ลำดับ จำเป็นจะต้องเป็นวงกลมเพราะมีเพียงk 2ค่าที่แตกต่างกันสำหรับ(ฉk (n-1), F k (n-2)) อย่างไรก็ตามรอบนี้มักจะไม่รวมค่าที่เป็นไปได้ทั้งหมดดังนั้นขึ้นอยู่กับค่าเริ่มต้นสองค่าf k (0)และf k (1)เราอาจได้รับรอบที่แตกต่างกัน ตัวอย่างเช่นสำหรับk = 2เรามีความเป็นไปได้สี่อย่างดังต่อไปนี้ขึ้นอยู่กับค่าสองค่าแรก: 0, 0, 0, 0, 0, 0, 0, 0, 0, ... 0, 1, 1, 0, 1, 1, 0, 1, 1, …

9
ซ้ำจำนวนเฉพาะ
ลำดับอื่นความท้าทายอื่น * คำนิยาม นายกpอยู่ในลำดับนี้ขอเรียกว่าA, IFF ทุกหลักdในp's ขยายตัวทศนิยมคุณแทนที่dด้วยdสำเนาdและเลขที่ส่งผลให้ยังคงเป็นนายก; ไม่อนุญาตศูนย์ ตัวอย่างเช่น11มีเพียงเล็กน้อยในลำดับนี้ (เป็นหมายเลขแรกโดยไม่ได้ตั้งใจ) ลำดับถัดไปคือ31เนื่องจาก3331เป็นตำแหน่งเฉพาะเช่นกัน แล้วก็53เพราะ55555333มันก็เป็นนายกและอื่น ๆ ท้าทาย รับอินพุตn, ส่งคืนA(n), คือnไอเท็ม th ในลำดับนี้ ตัวอย่าง ต่อไปนี้เป็นคำศัพท์ 20 คำแรกที่ให้คุณเริ่มต้นได้ นี่คือA057628สำหรับ OEIS 11, 31, 53, 131, 149, 223, 283, 311, 313, 331, 397, 463, 641, 691, 937, 941, 1439, 1511, 1741, 1871 นี่หมายถึงA(0) = 11, A(1) = …

3
คำแนะนำสำหรับทับทิม
ฉันจะย่อให้สั้นลงได้อย่างไร: p=gets.to_i a=gets b=gets.to_i หากอินพุตของฉันเป็นจำนวนเต็มตามด้วยสตริงตามด้วยจำนวนเต็ม?
13 code-golf  tips  ruby 

24
ได้โปรดส่งไอศครีมมาให้ฉัน
ทำให้ฉันเป็นไอศครีมโคน เรามีร้านไอศครีมที่ยอดเยี่ยมมากมายในนิวอิงแลนด์ ส่วนใหญ่ปิดให้บริการในฤดูหนาวดังนั้น ... .-@@-. (======) (--------) (==========) (__________) \/\/\/\/\/ \/\/\/\/ \/\/\/ \/\/ \/ เป้าหมาย เอาท์พุทไอศครีมโคนด้านบนอย่างแน่นอน (หรือส่งคืนจากฟังก์ชัน) นี่คือรหัสกอล์ฟเพื่อให้ได้คำตอบที่สั้นที่สุดชนะ

16
เหตุการณ์ที่เกิดขึ้นสูงสุดหรือต่ำสุด?
ท้าทาย: ปัจจัยการผลิต: สตริงที่มี ASCII ที่พิมพ์ได้ (ไม่รวมช่องว่างแท็บและบรรทัดใหม่) บูลีน† เอาท์พุท: ส่วนของสตริงจะแบ่งออกเป็นสี่กลุ่ม: อักษรตัวพิมพ์เล็ก ตัวอักษรตัวพิมพ์ใหญ่ ตัวเลข อื่น ๆ ขึ้นอยู่กับบูลีนเราจะแสดงเหตุการณ์ที่เกิดขึ้นสูงสุดหนึ่งกลุ่ม (หรือหลายกลุ่ม) ของกลุ่มสี่กลุ่มนี้หรือกลุ่มต่ำสุดแทนที่กลุ่มอื่นด้วยช่องว่าง ตัวอย่างเช่น: ข้อมูลเข้า: "Just_A_Test!" ประกอบด้วย: - 3 ตัวอักษรตัวพิมพ์ใหญ่: JAT - 6 ตัวอักษรตัวพิมพ์เล็ก: ustest - 0 หลัก - 3 อื่น ๆ :__! เหล่านี้จะเป็นผลลัพธ์สำหรับtrueหรือfalse: true: " ust est " // digits have the lowest occurrence (none), …
13 code-golf  string 

10
จัดการเด็ค ASCII
ไม่เคยมีความท้าทาย ASCAI-cards ที่แน่นอน AFAIK ดังนั้นใช้สำรับไพ่ ASCII ต่อไปนี้: .------..------..------..------..------..------..------..------..------..------..------..------..------. |2.--. ||3.--. ||4.--. ||5.--. ||6.--. ||7.--. ||8.--. ||9.--. ||T.--. ||J.--. ||Q.--. ||K.--. ||A.--. | | (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) || (\/) | | …

5
พับเมทริกซ์ขึ้น!
รับเมทริกซ์รวมค่าของขึ้น / ลงหรือซ้าย / ขวาเพื่อสร้าง X, พับมันขึ้นและกลับรายการ ฉันอธิบายอัลกอริทึมที่นี่: ขั้นตอนวิธี ข้อมูลที่คุณป้อนจะเป็นเมทริกซ์จตุรัสที่มีขนาดเป็นจำนวนคี่ในความสามารถเชิงตัวเลขที่สมเหตุสมผลของภาษาของคุณ ลองดูเมทริกซ์ต่อไปนี้เป็นตัวอย่าง: 1 2 3 2 1 0 3 2 3 0 4 2 5 6 3 7 4 7 9 4 0 6 7 2 5 ก่อนอื่นให้เพิ่มหมายเลขทุกตัวในจำนวนที่ใกล้เคียงที่สุดที่อยู่บนเส้นทแยงมุมหลักหรือเส้นทแยงมุม นั่นคือแบ่งเมทริกซ์ออกเป็นสี่ส่วนตามแนวทแยงมุมหลักและเส้นทแยงมุมแล้วรวมตัวเลขทั้งหมดในแต่ละส่วนเข้าหากึ่งกลางเช่น: 1 2 3 2 1 ↓ ↓ ↓ 0 → 3 2 …
13 code-golf  matrix 

7
กล่องเล็ก ๆ บนเนินเขา
มีเพลงเหน็บแนมที่เรียกว่าLittle Boxesเดิมโดย Malvina Reynolds เกี่ยวกับการแผ่กิ่งก้านสาขาชานเมืองที่มีเนื้อเพลงดังนี้: กล่องเล็ก ๆ ที่อยู่บนเนินเขา กล่องเล็ก ๆ ที่ทำจากไม่มีเล่ห์เหลี่ยม กล่องเล็ก ๆ บนเนินเขา กล่องเล็ก ๆ ทั้งหมดเหมือนกัน มีสีเขียวหนึ่งอันสีชมพูหนึ่ง อันสีฟ้าหนึ่งอันสีเหลือง และพวกมันล้วนทำจากสิ่งที่ไม่มีรสนิยมที่ดี และพวกมันทั้งหมดก็ดูเหมือนกัน งานของคุณที่นี่ได้รับการป้อนข้อมูลจำนวนเต็มที่n>1แสดงขนาดของบ้านเอาท์พุทสี่ "กล่องเล็ก" โดยใช้สีต่อไปนี้ (ในสัญกรณ์ 0xRRGGBB): Green -- 0x00FF00 Pink --- 0xFF00FF (technically magenta) Blue --- 0x0000FF Yellow - 0xFFFF00 หากคอนโซลเฉพาะของคุณไม่มีสีที่แน่นอนเหล่านี้คุณสามารถใช้ที่ใกล้เคียงที่สุดที่มีอยู่ (เช่นรหัสหลบหนี ANSI) บ้านสร้างด้วยn _พื้นและหลังคา พวกเขาถูกล้อมรอบด้วยตัวอักษรn/2(ปัดขึ้น) |แทนผนัง หลังคา2สูงเสมอและอยู่สองแห่ง/ที่ขอบด้านซ้ายสองหลังคาที่\อยู่ด้านขวาและn-2 -แสดงถึงหลังคาสูงสุด เมื่อบ้านมีขนาดใหญ่ขึ้นขนาดของหลังคาเปรียบเทียบก็จะเล็กลง …

17
แผนภูมิแท่งสิบแถว
นี่คือหลุม-1 จากฤดูใบไม้ร่วงทัวร์นาเมนต์ของ APL CodeGolf ฉันเป็นผู้เขียนปัญหาดั้งเดิมที่นั่นและอนุญาตให้โพสต์ใหม่ได้ที่นี่ รับรายการตัวเลขสร้างแผนภูมิแท่งแนวนอนของ#ตัวอักษรสำหรับจำนวนที่พอดีกับแต่ละกลุ่มที่มีขนาดเท่ากันสิบกลุ่ม ตัวอย่างเช่นถ้าข้อมูลมีค่าตั้งแต่ 0-100 ช่วงจะเป็น 0–9.9, 10–19.9, …, 90–100 (เป็นทางการ [0,10), [10,20), …, [90,100].) คุณอาจคิดว่าจะมีตัวเลขอย่างน้อยสองตัวและไม่ใช่ว่าตัวเลขทั้งหมดจะเหมือนกัน ตัวอย่าง: [1,0,0,0,0,0,0,0,0,0] ให้: ######### # [0,1,2,3,4,5,6,7,8,9] ให้: # # # # # # # # # # [0,1,2,3,4,5,6,7,8,9,10] ให้: # # # # # # # # # ## [0,1,2,3,4,5,6,7,8,9,10,11] ให้: …

16
ลำดับการยกกำลัง
เหมืองเกลือโปแลนด์ที่เก่าแก่ที่สุดซึ่งตั้งอยู่ที่ Bochnia * เริ่มต้นในปี 1248 ซึ่งเราสามารถพิจารณาตัวเลขมหัศจรรย์ได้ เราจะเห็นว่ามันเป็นเท่ากับ 4 หลักจากลำดับของ exponentiations นี้: เนื่องจากวันที่นั้นเป็นตัวเลข 4 หลักจริง ๆ เราสามารถทำให้มันยาวขึ้นได้ เราสามารถทำซ้ำขั้นตอนนี้ได้จนกว่าจะถึงระยะอนันต์ ลำดับจะเป็นแบบนี้ถ้าเรา จำกัด จำนวน2048 124816326412825651210242048 เพื่อให้ดูดีขึ้นเล็กน้อยเราสามารถแยกตัวเลข: 1|2|4|8|16|32|64|128|256|512|1024|2048 ลองลำดับที่กำหนดเองยาวกว่าวันที่ สมมติว่าเราต้องการให้มี 5 หลัก - มีความเป็นไปได้มากกว่าหนึ่ง: 24816 81632 64128 หรือ 3 หลัก: 124 248 816 นอกจากนี้เรายังสามารถเพิ่มตัวเลข 3 หลักนี้ แต่ขอบอกว่าของที่ลำดับที่จะต้องมีอย่างน้อยสองหมายเลข * ไม่มีข้อมูลเกี่ยวกับเรื่องนี้ในวิกิพีเดียภาษาอังกฤษ หากคุณป้อนรุ่นโปแลนด์ - แล้วมี ถ้าคุณไปที่เหมืองคนงานจะบอกคุณด้วยว่ามันเริ่มต้นในปี 1248 ความท้าทาย …

4
ยืดอาร์เรย์
ก่อนหน้านี้ฉันกำหนดกระบวนการในการบดขยี้อาร์เรย์ ในความสนใจเราอ่านอาร์เรย์จากซ้ายไปขวา หาก ณ จุดที่เราพบสององค์ประกอบเดียวกันในแถวที่เราลบหนึ่งและสองครั้งที่สอง ตัวอย่างเช่นที่นี่เป็นกระบวนการของการบดขยี้อาร์เรย์ต่อไปนี้ [5,2,2,4] ^ [5,2,2,4] ^ [5,2,2,4] ^ [5,4,4] ^ [5,4,4] ^ [5,8] ^ โปรดทราบว่าองค์ประกอบเดียวกันสามารถยุบได้หลายครั้ง ในตัวอย่าง2,2,4ถูกยุบลง8ในรอบเดียว ตอนนี้การบดย่อยอาร์เรย์เป็นเรื่องง่ายอะไรที่ยากคือการบดขยี้พวกเขา งานของคุณคือการใช้อาร์เรย์ของจำนวนเต็มบวกเป็นอินพุทและเอาท์พุทอาเรย์ที่ใหญ่ที่สุดที่สามารถสร้างรูปแบบการป้อนข้อมูลเมื่อบดซ้ำ ๆ ยกตัวอย่างเช่นอาร์เรย์[4]จะเกิดขึ้นโดยเด็ดขาดซึ่งเป็นในทางกลับกันที่เกิดขึ้นจากการบด[2,2] [1,1,1,1]เนื่องจากเราไม่สามารถมีค่าที่ไม่ใช่จำนวนเต็ม[1,1,1,1]ไม่สามารถ unrushed ใด ๆ เพิ่มเติมและเป็นคำตอบของเรา คุณจะไม่ได้รับ0อาร์เรย์ในอินพุทของคุณเพราะอาร์เรย์ดังกล่าวสามารถขยายได้อย่างไม่มีกำหนด คุณจะไม่ได้รับคดีที่มีเลขคี่สองตัวติดกันกรณีดังกล่าวไม่สามารถเป็นผลมาจากการย่อยยับ นี่คือcode-golfดังนั้นคำตอบจะถูกทำคะแนนด้วยขนาดของแหล่งที่มาของพวกเขาวัดเป็นไบต์ด้วยไบต์ที่น้อยกว่าจะดีกว่า ก่อนที่คุณจะเริ่มทำคำตอบฉันแค่อยากบอกว่าความท้าทายนี้ยากกว่าที่คิด ตรวจสอบสัญชาติญาณของคุณในขณะที่คุณไปและให้แน่ใจว่าคำตอบของคุณผ่านทุกกรณีทดสอบ กรณีทดสอบ [] -> [] [5] -> [5] [6] -> [3,3] [8] -> [1,1,1,1,1,1,1,1] [4,8] -> [1,1,1,1,1,1,1,1,1,1,2] …

11
รวมใบหน้าของคิวบ์ Cubically
การรวมใบหน้าคิวบ์แบบลูกบาศก์ด้วยตนเองนั้นเป็นเรื่องที่น่าเบื่อและใช้เวลานานและ sorta ก็เหมือนกับการเขียนโค้ดในแบบลูกบาศก์ ในcubifier ที่มีประสิทธิภาพที่สุดฉันขอให้คุณแปล ASCII เป็นแหล่งข้อมูลแบบลูกบาศก์ หนึ่งในคำตอบนั้นใช้ลำดับการกำหนดค่าเริ่มต้นของคิวบ์จากนั้นปรับเปลี่ยนคิวบ์ผลลัพธ์ตามจำนวนผลรวมของคิวบ์ที่กำหนดค่าเริ่มต้นไว้ล่วงหน้า วิธีนี้ถูกใช้ในโปรแกรมที่เกี่ยวข้องกับผู้ใช้หลายคนตั้งแต่ Cubically เมื่อทำการทดสอบลำดับการกำหนดค่าเริ่มต้นใหม่เราต้องเพิ่มค่าทั้งหมดบนใบหน้าทั้งหมดซึ่งโดยปกติจะใช้เวลาสองหรือสามนาที งานของคุณคือทำให้กระบวนการนี้เป็นอัตโนมัติสำหรับเรา! คุณจะใช้เวลาสองปัจจัยการผลิตเป็นจำนวนเต็มและสตริงn cสิ่งเหล่านี้อาจอ่านได้จากอาร์กิวเมนต์บรรทัดคำสั่งอาร์กิวเมนต์ฟังก์ชันอินพุตมาตรฐานไฟล์หรือการรวมกันของสิ่งเหล่านั้น cจะเป็นคิวบ์หน่วยความจำแบบลูกบาศก์ขนาดnตามที่พิมพ์โดยนักแปล ล่าม Cubically จะทิ้ง cube ไว้ที่ STDERR เมื่อมีการยกเลิกโปรแกรมซึ่งจัดรูปแบบไว้อย่างดีเพื่อการดูที่ง่าย รันโปรแกรมว่างในตัวแปล Cubicallyและเปิดส่วนดีบักเพื่อดูการถ่ายโอนข้อมูลคิวบ์ของคิวบ์เริ่มต้น เพิ่มอาร์กิวเมนต์4เพื่อดู 4x4x4 หรือ5ดู 5x5x5 เป็นต้น หากnเป็น 3 cจะเป็นไปตามรูปแบบนี้ (จำนวนเต็มจะเป็นตัวแปร): 000 000 000 111222333444 111222333444 111222333444 555 555 555 ช่องว่างการขึ้นบรรทัดใหม่และทั้งหมด ถ้าnเป็น 4 cจะมีลักษณะเช่นนี้ (เช่นเดียวกับจำนวนเต็มตัวแปร): 0000 0000 0000 …

2
สร้างวงเล็บแข่งขัน
รับรายการอินพุตของสตริงที่ไม่ว่างให้แสดงเอาต์พุต ASCII art ที่เป็นตัวแทนของทัวร์นาเมนต์ตามกฎการวาดภาพต่อไปนี้: จำนวนสตริงรับประกันได้ว่าเป็นปริมาณ 2,4,8,16,etc. สองสายแรกเล่นกันและอีกสองสายเล่นกันและอื่น ๆ นี่คือรอบแรก สำหรับแต่ละเกมให้เลือกผู้ชนะแบบสุ่มโดยมีความน่าจะเป็นเท่ากัน สำหรับรอบต่อไปผู้ชนะในเกมแรกจะเป็นผู้ชนะในเกมที่สองผู้ชนะในเกมที่สามจะเป็นผู้ชนะในเกมที่สี่และต่อไป รอบต่อมาตามรูปแบบ ในที่สุดก็มีหนึ่งผู้ชนะโดยรวม สำหรับการส่งออกสวย (จำเป็น) _สายทั้งหมดจะต้องใช้ได้และต่อท้ายด้วยการขีดเส้นใต้ เพื่อให้วงเล็บเข้าแถวอย่างเหมาะสมแต่ละรายการจะต้องถูกบุด้วย_ความยาวเท่ากันสำหรับรอบนั้น คุณสามารถเลือกได้ว่าการเติมเต็มจะเติมหรือต่อท้ายตราบใดที่สอดคล้องกัน คุณสามารถเลือก pre-pad สตริงทั้งหมดให้มีความยาวเท่ากันแทนที่จะเป็นต่อรอบ แล้วแต่จำนวนใดจะ golfier สำหรับรหัสของคุณ กฎเพิ่มเติม ขึ้นบรรทัดใหม่หรือต่อท้ายช่องว่างหรือช่องว่างทั้งหมดเป็นตัวเลือกตราบใดที่ตัวละครตัวเองเข้าแถวอย่างถูกต้อง ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น หากฟังก์ชั่นคุณสามารถส่งคืนผลลัพธ์มากกว่าการพิมพ์ หากเป็นไปได้โปรดใส่ลิงค์ไปยังสภาพแวดล้อมการทดสอบออนไลน์เพื่อให้ผู้อื่นสามารถลองใช้รหัสของคุณได้! ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการเล่นกอล์ฟตามปกติทั้งหมดและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ ตัวอย่าง ตัวอย่างกับเมือง['Boston', 'New York', 'Charlotte', 'Atlanta', 'St. Paul', 'Chicago', 'Los Angeles', 'Phoenix']: _Boston______ \_New York____ …

4
การกลับมาของผู้ฆ่าไฮดรา
เป็นเวลานานแล้วที่คุณฆ่าไฮดรานั้นคุณก็ดื่มด่ำกับความรุ่งเรืองมาหลายปี แต่ตอนนี้ผู้คนกำลังเรียกคุณว่าถูกชะล้าง ถึงเวลาที่คุณจะพิสูจน์พวกเขาผิดคุณได้ยินเสียงของไฮดราอีก เพียงแค่ฆ่ามันและคุณจะได้รับเกียรติทั้งหมดที่คุณสมควรได้รับ คุณมาถึงคลังอาวุธเพื่อรับดาบของคุณ แต่พวกเขาทั้งหมดออกจากดาบปกติทั้งหมดที่เหลืออยู่คือภาค n- เซกเตอร์จะแบ่งจำนวนของหัวบนไฮดราโดย n แต่สามารถใช้ได้ถ้าจำนวนของหัวคือหารด้วย n คุณจะต้องเขียนโค้ดอีกครั้งเพื่อช่วยคุณฆ่าไฮดรา รหัสของคุณจะใช้เป็นจำนวนหัวที่ไฮดราเริ่มการต่อสู้ด้วยจำนวนหัวที่ไฮดราเติบโตในแต่ละตาและรายชื่อของภาค n ที่คุณสามารถใช้ รหัสของคุณจะแสดงรูปแบบการเคลื่อนไหวที่ดีที่สุดเพื่อสังหารไฮดราโดยเร็วที่สุด ในแต่ละเทิร์นของการต่อสู้คุณสามารถเลือกดาบเดี่ยวที่จะใช้หากหลังจากไฮดราไฮดรามีหัวเดียวเท่านั้นที่คุณชนะถ้าไม่ใช่มันจะเพิ่มขึ้น คุณอาจไม่มีทางเคลื่อนไหวและถ้าไม่มีการเคลื่อนไหวใด ๆ ที่เป็นไปได้คุณก็แพ้ หากไม่สามารถแก้ปัญหาได้คุณสามารถส่งออกสิ่งอื่นนอกเหนือจากโซลูชันเช่นรายการว่างเปล่าไม่มีอะไรจำนวนศูนย์ ฯลฯ นี่คือcode-golfดังนั้นคำตอบจะถูกนับเป็นจำนวนไบต์โดยมีน้อยกว่าดีกว่า กรณีทดสอบ นี่คือบางกรณีทดสอบขั้นพื้นฐานสุดกรณีทดสอบเพิ่มเติมจะถูกเพิ่มตามคำขอ 24 heads, 1 heads per turn, [2,3] -> [3,3,2,3] 25 heads, 2 heads per turn, [2,3] -> No solutions 4 heads, 2 heads per turn, …
13 code-golf  math  number  game 

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