การเขียนโปรแกรมปริศนา & รหัสกอล์ฟ

คำถาม & คำตอบสำหรับผู้ชื่นชอบการเขียนโปรแกรมปริศนา

25
ฉันคิดเลข (Cop's Thread)
Robber's Thread ที่นี่ ในการท้าทายตำรวจและโจรตำรวจนี้จะคิดว่าจำนวนเต็มบวก พวกเขาจะเขียนโปรแกรมหรือฟังก์ชั่นที่ส่งออกหนึ่งค่าเมื่อระบุหมายเลขเป็นอินพุตและค่าอื่นสำหรับอินพุตจำนวนเต็มบวกอื่น ๆ ทั้งหมด ตำรวจจะเปิดเผยโปรแกรมในคำตอบที่เก็บหมายเลขเป็นความลับ โจรสามารถถอดรหัสคำตอบโดยค้นหาหมายเลข นี่คือการจับ: นี่ไม่ใช่ โค้ดกอล์ฟแต่คะแนนของคุณจะเป็นหมายเลขลับที่มีคะแนนต่ำกว่าจะดีกว่า เห็นได้ชัดว่าคุณไม่สามารถเปิดเผยคะแนนของคุณได้ในขณะที่พวกโจรกำลังพยายามค้นหามันอยู่ คำตอบที่ไม่ได้แตกในหนึ่งสัปดาห์หลังจากโพสต์อาจมีคะแนนเปิดเผยและทำเครื่องหมายว่าปลอดภัย คำตอบที่ปลอดภัยไม่สามารถถอดรหัสได้ มันอาจจะไปโดยไม่บอก แต่คุณควรจะให้คะแนนคำตอบของคุณ นั่นคือคุณควรรู้ว่าเครื่องตัดสินใจของคุณยอมรับคุณค่าใด เพียงแค่รู้ว่ามีอย่างใดอย่างหนึ่งไม่เพียงพอ การใช้ฟังก์ชั่น Cryptographic ซึ่งแตกต่างจากการท้าทายของตำรวจและโจรส่วนใหญ่ที่ขอให้คุณไม่ใช้ฟังก์ชั่นการเข้ารหัสลับความท้าทายนี้ไม่เพียง แต่อนุญาตให้พวกเขาทั้งหมด แต่สนับสนุนพวกเขา คุณมีอิสระที่จะสร้างคำตอบในทุกทางตราบใดที่คุณพยายามที่จะชนะ ที่ถูกกล่าวว่าคำตอบโดยใช้วิธีการอื่น ๆ ก็ยินดีต้อนรับที่นี่ เป้าหมายของการท้าทายคือการชนะและตราบใดที่คุณไม่โกงไม่มีอะไรอยู่นอกโต๊ะ

2
Office Escape: วางแผนทางออกของคุณ!
มันเป็นการวิ่งครั้งสุดท้าย ... และครึ่งหนึ่งของทีมคุณไม่ดี คุณทำงานช้าแล้วแค่ทำสิ่งสุดท้ายในวันนี้รอคอย ... ทำไมไฟดับไป? ฉันจำไม่ได้ว่าคนที่รักษาความปลอดภัยมารอบ ... โอ้ไม่! ฉันทิ้งกุญแจไว้ที่บ้าน! ในฐานะที่เป็นความน่ากลัวของอ่างล้างมือในสถานการณ์ที่คุณตัดสินใจว่าคุณกำลังจะหลบหนี สรุปภารกิจ หากต้องการเอฟเฟกต์การหลบหนีคุณต้องมีแผน! อย่างไรก็ตามคุณรู้ว่าแผนใด ๆ มีโอกาสล้มเหลวและแผนการที่แตกต่างต้องการความพยายามที่แตกต่างกัน เมื่อคุณหิวกระหายและเป็นวิศวกรคุณตัดสินใจที่จะเขียนโปรแกรมสั้น ๆ เพื่อกำหนดวิธีที่ดีที่สุดในการหลีกหนีความซับซ้อนสร้างสมดุลระหว่างความน่าจะเป็นของความสำเร็จและความพยายามที่จะต้องใช้ คุณสร้างแผนที่อาคาร: ####################### # = # ! = ! <-- window # ! = # (freedom!) #################= # # # = # # # = # # # = # # o …

30
n กำลังต่อไปของ b อยู่ไกลแค่ไหน?
ให้nและbจะ integers 1บวกขนาดใหญ่กว่า ขาออกห่างจากอำนาจต่อไปของnb สำหรับn=5และb=3อำนาจต่อไปของการ3จาก5เป็น9( 3^2 = 9) 9 - 5 = 4เพื่อส่งออกเป็น สำหรับn=8และb=2อำนาจต่อไปของการ2จาก8เป็น16( 2^4 = 16) 16 - 8 = 8เพื่อส่งออกเป็น โปรดทราบว่าnเป็นพลังของ2ในตัวอย่างนี้ Testcases: n b output 212 2 44 563 5 62 491 5 134 424 3 305 469 8 43 343 7 2058 592 7 1809 289 5 …

30
คำนวณชุดที่ยาวที่สุดของ 1 ในค่าเลขฐานสองของจำนวนเต็ม
เป้าหมาย กำหนดจำนวนเต็มแบบไม่ลบสร้างฟังก์ชันที่ส่งคืนตำแหน่งเริ่มต้นของจำนวน 1 ที่ใหญ่ที่สุดติดต่อกันในค่าเลขฐานสองของจำนวนเต็มนั้น เมื่อได้รับการป้อนข้อมูลกลับมา00 หากตัวเลขมีหลายเส้นที่มีความยาวเท่ากันคุณจะต้องกลับตำแหน่งของริ้วสุดท้าย อินพุต จำนวนเต็มมากกว่าหรือเท่ากับ 0 เอาท์พุต จำนวนเต็มคำนวณตามที่อธิบายด้านล่าง กฎระเบียบ นี่คือโค้ดกอล์ฟดังนั้นโค้ดที่สั้นที่สุดเป็นไบต์ในแต่ละภาษาจะชนะ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม ตัวอย่างและกรณีทดสอบ ตัวอย่างที่ 1 ฟังก์ชันของคุณส่งผ่านจำนวนเต็ม 142 142 เท่ากับ 1,0001110 ในไบนารี แนวที่ยาวที่สุดคือ "111" (แนวของสามเส้น) แนวเริ่มต้นที่ตำแหน่ง 2 ^ 1 ฟังก์ชันของคุณจะคืนค่า 1 ตามผลลัพธ์ ตัวอย่างที่ 2 ฟังก์ชันของคุณผ่านจำนวนเต็ม 48 48 เท่ากับ 110000 ในหน่วยไบนารี่ แนวที่ยาวที่สุดคือ "11" (แนวของสองเส้น) แนวเริ่มต้นที่ตำแหน่ง 2 ^ 4 ฟังก์ชันของคุณจะคืนค่า 4 …

8
เลื่อนตัวเลือกขนาดตัวอักษรของ Word
Word และปุ่มเปลี่ยนขนาดตัวอักษรตามกฎเหล่านี้:A▲ᴀ▼ ขนาดตัวอักษรเริ่มต้นคือ 11 หากกดเมื่อขนาดตัวอักษรคือ 1 ขนาดจะยังคงอยู่ 1ᴀ▼ ขนาดตัวอักษรมีการเปลี่ยนแปลงด้วย 1 จุดในช่วง 1 - 12 ขนาดตัวอักษรมีการเปลี่ยนแปลง 2 จุดในช่วง 12 - 28 ตัวเลือกคือ 28, 36, 48, 72 และ 80 ในช่วง 28 - 80 ขนาดตัวอักษรเปลี่ยนไปด้วย 10 คะแนนในช่วง 80 - 1630 ขนาดตัวอักษรมีการเปลี่ยนแปลง 8 จุดในช่วง 1630 - 1638 หากกดเมื่อขนาดตัวอักษรเป็น 1638 ขนาดจะคงที่ 1638A▲ งาน ในไม่กี่ไบต์ให้มากที่สุดกำหนดขนาดตัวอักษรที่ได้เมื่อกำหนดชุดของปุ่มกดในรูปแบบที่เหมาะสม ตัวอย่าง …

30
จริงหรือเปล่า? ถามเจลลี่!
พื้นหลัง แรงบันดาลใจจากอ็อกเทฟ (และโดยการขยาย MATL's) การตีความที่สะดวกมากของเมทริกซ์ความจริง / ความเท็จเยลลี่ได้รับอะตอมอะตอมȦ (ออคเทฟทั้งหมด ) Ȧใช้เวลาอาร์เรย์เป็น input และส่งกลับ1ถ้าอาร์เรย์คือไม่ว่างและไม่ได้มีจำนวน0 (จำนวนเต็มลอยหรือซับซ้อน) ที่ใดก็ได้ในโครงสร้าง ; มิฉะนั้นก็จะส่งกลับ0 ตัวอย่างเช่นอาร์เรย์[[]]เป็นความจริงเพราะมันไม่ว่างเปล่าและไม่มีเลขศูนย์ แต่[[0]]เป็นเท็จเพราะมันมีค่า0อยู่ที่ระดับชั้นในสุด งาน ในภาษาการเขียนโปรแกรมที่คุณเลือกให้เขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่นที่ใช้อาร์เรย์จำนวนเต็มที่อาจว่างเปล่าและขรุขระเป็นอินพุตและพิมพ์หรือส่งคืนค่าความจริงหรือเท็จที่ระบุว่าȦจะคืนค่า1หรือ0ตามลำดับ การส่งของคุณจะต้องปฏิบัติตามกฎต่อไปนี้ ค่าความจริงและเท็จจะต้องสอดคล้องกับอินพุตทั้งหมดเช่นอาร์เรย์ทั้งหมดที่Ȧคืน1ต้องจับคู่กับค่าความจริงเดียวกันและอาร์เรย์ทั้งหมดที่ all คืน0ต้องจับคู่กับค่าเท็จเดียวกัน เนื่องจากโปรแกรมแบบเต็มสามารถใช้การแทนค่าสตริงของอาร์เรย์เป็นอินพุตจึงอนุญาตให้ทำได้ อย่างไรก็ตามคุณต้องใช้การแสดงคานคาลิกในภาษาของคุณโดยส่งคืนโดยreprหรือคล้ายกัน โดยเฉพาะอย่างยิ่งคุณไม่สามารถสันนิษฐานได้ว่าองค์ประกอบแรกของอาร์เรย์จะนำหน้าด้วยช่องว่าง หาก (และเฉพาะในกรณี) ภาษาของคุณไม่สามารถแทนอาร์เรย์แบบขรุขระได้คุณอาจใช้การแทนค่าสตริงของอินพุตโดยใช้ไวยากรณ์ที่เป็นมาตรฐานของภาษาการเขียนโปรแกรมที่มีอยู่แล้ว หากภาษาของคุณมีหลายวิธีในการแทนอาร์เรย์แบบขรุขระ (เช่นรายการและสิ่งอันดับ) คุณจะต้องสนับสนุนหนึ่งในนั้นเท่านั้น ถ้าภาษาของคุณได้ในตัวว่าตัวเองเป็นส่งที่ถูกต้องเพื่อความท้าทายนี้คุณไม่สามารถใช้มันในคำตอบของคุณ อนุญาตบิวด์อินอื่นทั้งหมด คุณควรโพสต์คำตอบโดยใช้ทั้งอาร์เรย์และการจัดการสตริงแม้ว่าจะสั้นกว่าอีก ใช้กฎมาตรฐานรหัสกอล์ฟทั้งหมด อาจรหัสที่สั้นที่สุดในไบต์ชนะ! กรณีทดสอบความจริง [1] [10] [[]] [[[[1]]]] [[], [1], [1, 2]] [[1], [1, [2]], …

16
ใครที่สูงที่สุด?
เด็ก ๆ ที่ไม่มีการแชร์ขนาดที่แน่นอนของพวกเขาทั้งสองคนจะเรียงกันเป็นระเบียบ แต่ละคนสามารถเปรียบเทียบความสูงกับเพื่อนบ้านของพวกเขาได้ทันที เมื่อครูตะโกน "ยกมือถ้าคุณสูงที่สุด" พวกเขาจะทำเช่นนั้นถ้าพวกเขาสูงกว่าเพื่อนบ้านทั้งคู่และพวกเขาก็ทำพร้อมกัน ถ้าเพียงยกมือขึ้นเขาจะชนะ หากมีมากกว่าหนึ่งมือยกพวกเขาทั้งหมดจะถูกกำจัดออกจากแถว (รักษาลำดับของเด็กที่เหลือ) และพวกเขาทำซ้ำขั้นตอน เขียนโปรแกรมซึ่งใช้อาร์เรย์ของจำนวนเต็มที่แตกต่างกัน (คุณสามารถถือว่าพวกเขาเป็นบวกอย่างเคร่งครัด) และส่งออกผู้ชนะของเกมนี้ นี่คือรหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ ตัวอย่าง (แสดงขั้นตอนกลาง): 5 3 9 8 7 → 3 8 7 → 8 1 2 9 4 → 9 9 3 8 7 4 12 5 → 3 7 4 5 → 3 4 → …

30
คำนวณค่ามัธยฐาน
ท้าทาย รับรายการของจำนวนจริงที่ไม่มีข้อ จำกัด คำนวณค่ามัธยฐาน คำนิยาม คำนวณค่ามัธยฐานดังนี้: เรียงลำดับรายการก่อน ถ้าจำนวนรายการเป็นเลขคี่ค่ามัธยฐานคือค่าที่อยู่ตรงกลางของรายการที่เรียงลำดับ มิฉะนั้นค่ามัธยฐานคือค่าเฉลี่ยเลขคณิตของสองค่าที่อยู่ใกล้กับศูนย์กลางของรายการที่เรียง ตัวอย่าง [1,2,3,4,5,6,7,8,9] -> 5 [1,4,3,2] -> 2.5 [1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5,-5,100000,1.3,1.4] -> 1.5 [1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5,1.5,-5,100000,1.3,1.4] -> 1.5

16
นี่คือความท้าทายที่ไบต์
ฉันต้องหยุดคิดถึงชื่อที่อ่อนแอ งานของคุณคือสร้างสนิปเพตจำนวนมาก (โปรแกรมที่มีอินพุทและเอาท์พุทในตัว), ฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบให้มากที่สุดเท่าที่จะเป็นไปได้ เพื่อใช้อักขระใน ASCII (หรือหน้ารหัสภาษาของคุณหากระบุโดยตรงว่าไม่ใช่ ASCII) ซึ่งไม่ได้ใช้ในโปรแกรมก่อนหน้า นี่คือตัวอย่างคำตอบ (แยกโปรแกรมโดยคั่นด้วยบรรทัดใหม่): Derp ASdFGHJKLAAA qwEEERtyRty ในการนี้ (ภาษาสมมุติ) คำตอบแรกของฉันคือDerpซึ่งใช้ขึ้นD, e, และr pในโปรแกรมที่สองฉันไม่ได้รับอนุญาตให้ใช้อักขระเหล่านั้นอีกครั้ง แต่ฉันสามารถนำอักขระที่ฉันต้องการกลับมาใช้ได้อีกครั้ง เช่นเดียวกันกับโปรแกรมที่สามเป็นต้น แต่ละโปรแกรมจะต้องใช้อาร์เรย์ของจำนวนเต็มดังนั้นสิ่งนี้ (ดูตัวอย่างอินพุต / เอาต์พุตสำหรับรูปแบบอินพุต / เอาต์พุตที่ถูกต้อง): [3 4 -2 5 7 196 -44 -2] และมันจะต้องเอาท์พุทไอเท็มในอาเรย์เป็นลำดับตามลำดับจากน้อยไปมาก: [-44 -2 -2 3 4 5 7 196] คะแนนของคุณจะเป็นจำนวนรวมของการส่ง หากมีการเสมอจำนวน bytecount ต่ำสุด (จำนวนไบต์น้อยที่สุดในรหัสของคุณ) …

20
รูปและพื้นดิน
ที่มา: Wikipedia สำหรับความท้าทายนี้คุณควรเขียนสองโปรแกรมซึ่งมีลักษณะคล้ายกับรูปและพื้นดินของภาพดังกล่าวข้างต้นดังกล่าวว่าหนึ่งในพวกเขาพิมพ์และพิมพ์อื่นfigure ๆ groundโดยเฉพาะ: figureเขียนโปรแกรมที่ใช้เวลาไม่ป้อนข้อมูลและพิมพ์สตริง อักขระช่องว่างที่อนุญาตเฉพาะในโปรแกรมของคุณคือช่องว่าง (รหัสจุด 0x20) และบรรทัดใหม่ (การขึ้นบรรทัดใหม่, 0x0D, linefeeds, 0x0A หรือการรวมกันของทั้งคู่) การไม่สนใจบรรทัดใหม่จำนวนของอักขระเว้นวรรค (รหัสจุด 0x20) และอักขระที่ไม่ใช่ช่องว่างจะต้องเหมือนกัน ตัวอย่างเช่นนี้จะเป็นโปรแกรมที่ถูกต้อง (ในภาษาสมมุติ): ab c d e f โปรดทราบว่ามีช่องว่างต่อท้ายในบรรทัดแรก หากคุณสลับnอักขระช่องว่าง TH กับn TH อักขระที่ไม่ใช่ช่องว่างโปรแกรมควรพิมพ์groundแทน สำหรับตัวอย่างข้างต้นโปรแกรมจะมีลักษณะเช่นนี้: a b cde f โปรดทราบว่ามีช่องว่างต่อท้ายในบรรทัดที่สองและสาม ทั้งตัวแบบและโซลูชันภาคพื้นดินควรเป็นโปรแกรมแบบเต็มในภาษาเดียวกันซึ่งพิมพ์ไปยัง STDOUT คุณสามารถพิมพ์บรรทัดใหม่ที่เป็นทางเลือกหนึ่งบรรทัดในกรณีใดกรณีหนึ่ง คุณสามารถส่งออกสิ่งที่คุณต้องการ STDERR ตราบใดที่ STDOUT ถูกต้อง คุณอาจใช้ภาษาการเขียนโปรแกรมใด ๆแต่โปรดทราบว่าช่องโหว่เหล่านี้เป็นสิ่งต้องห้ามตามค่าเริ่มต้น นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดที่ถูกต้อง - …

6
ทำคะแนนเส้นทางการแกว่งเถาไวน์ของทาร์ซาน
เถาองุ่นโอลิมปิกดำเนินการตามปกติในต้นไม้มาตรฐาน โดยเฉพาะอย่างยิ่งแผนภูมิมาตรฐานnมีจุดยอดสำหรับการ0ขึ้นn-1และขอบการเชื่อมโยงจุดยอดที่ไม่ใช่ศูนย์แต่ละจุดaกับจุดยอดn % aด้านล่าง ตัวอย่างเช่นต้นไม้มาตรฐาน 5 มีลักษณะดังนี้: 3 | 2 4 \ / 1 | 0 เนื่องจากส่วนที่เหลือเมื่อ 5 ถูกหารด้วย 3 คือ 2 ส่วนที่เหลือเมื่อ 5 ถูกหารด้วย 2 หรือ 4 คือ 1 และส่วนที่เหลือเมื่อ 5 ถูกหารด้วย 1 คือ 0 ในปีนี้ทาร์ซานจะได้รับการปกป้องทองของเขากับการปฏิบัติใหม่ซึ่งแต่ละเริ่มต้นที่ยอดn - 1ชิงช้าจุดสุดยอดn - 2ยังคงจุดสุดยอดn - 3ฯลฯ 0จนในที่สุดเขาปลดจุดสุดยอด คะแนนสำหรับกิจวัตรประจำวันคือผลรวมของคะแนนสำหรับการสวิงแต่ละครั้ง (รวมถึงการลงจากหลังม้า) และคะแนนสำหรับการสวิงคือระยะทางภายในต้นไม้ระหว่างจุดเริ่มต้นและจุดสิ้นสุด ดังนั้นรูทีนของทาร์ซานบนต้นไม้มาตรฐาน 5 มีคะแนน …
32 code-golf  math  number  number-theory  code-golf  code-golf  restricted-source  programming-puzzle  css  code-golf  parsing  code-golf  random  encryption  code-golf  ascii-art  fractal  code-golf  math  code-golf  sorting  graph-theory  path-finding  permutations  code-golf  tetris  code-golf  card-games  code-golf  math  sequence  rational-numbers  code-golf  chess  code-golf  string  geometry  grid  code-golf  ascii-art  grid  code-golf  sequence  integer  code-golf  math  number-theory  packing  polyomino  code-golf  math  code-golf  string  quine  permutations  code-golf  math  code-golf  image-processing  optical-char-recognition  code-golf  string  kolmogorov-complexity  sequence  integer  code-golf  number  permutations  palindrome  code-golf  kolmogorov-complexity  code-golf  number  sequence  string  fewest-operations  code-golf  string  kolmogorov-complexity  sequence  primes  code-golf  string  ascii-art  code-golf  string  number  alphabet  code-golf  counting  code-golf  number  sequence  number-theory  primes  code-golf  subsequence  word-search 

30
รวมตัวเลขตามมาตรฐานใน
พิจารณาสตรีม / ไฟล์ที่มีจำนวนเต็มหนึ่งตัวต่อบรรทัด ตัวอย่างเช่น: 123 5 99 227รหัสของคุณควรส่งออกผลรวมของตัวเลขเหล่านี้ว่าเป็น รูปแบบการป้อนข้อมูลเป็นจำนวนเต็มหนึ่งจำนวนต่อหนึ่งบรรทัดอย่างเคร่งครัด ตัวอย่างเช่นคุณไม่สามารถสมมติว่าอินพุตอยู่ในหนึ่งบรรทัดเป็นอาร์เรย์ของจำนวนเต็ม คุณสามารถรับอินพุตจาก STDIN ในรูปแบบของชื่อไฟล์หรือไฟล์ที่มีชื่อที่คุณเลือก คุณสามารถเลือกได้ ไม่อนุญาตให้ใช้วิธีอื่นในการป้อนข้อมูล อินพุตจะมีจำนวนเต็มอย่างน้อยหนึ่งตัว คุณสามารถสันนิษฐานได้ว่าจำนวนเต็มทั้งหมดจะไม่ใช่เชิงลบและผลรวมของพวกเขาคือน้อยกว่า232

7
สามรูปหลายเหลี่ยมสองช่วงเวลาสองควินและความท้าทายรหัสหนึ่งกอล์ฟ
จัดทำโปรแกรม A ที่ใช้งานในภาษา A สร้างโปรแกรม B และใช้งานโปรแกรม A ในภาษา B สร้างโปรแกรม C โปรแกรม B เมื่อทำงานในภาษา B สร้างโปรแกรม A และใช้งานโปรแกรม B ในภาษา A สร้างโปรแกรม C โปรแกรม C เมื่อทำงานในภาษาAหรือภาษาBให้พิมพ์ "ภาษาผิด!" Program | Language | Result --------|----------|---------- A | A | Program B B | B | Program A A | B | …

2
สร้างนาฬิกาดิจิตอลใน Wireworld
แรงบันดาลใจจากเกมของคำถามชีวิตนี้ Wireworldจำลอง "อิเล็กตรอน" ที่ไหลผ่าน "สาย" การจัดเรียงอย่างง่าย ๆ ที่สร้างพฤติกรรมประตูตรรกะแบบทั่วไป ฉันขอท้าให้คุณสร้างนาฬิกาดิจิตอลใน Automaton เซลลูลาร์ Wireworld นาฬิกาของคุณจะต้องนับตั้งแต่ 00:00 ถึง 23:59 ตามปกติหรือถึง 11:59 ด้วยตัวบ่งชี้ AM / PM จากนั้นรีเซ็ต รายการของคุณควรแบ่งออกเป็นสองส่วนอย่างชัดเจน ส่วน A ควรมีตรรกะที่ไม่แสดงทั้งหมดทั้งหมดของส่วนที่เกี่ยวข้องในการเพิ่มและวนซ้ำตัวเลข ส่วน B จะเป็นจอแสดงผลและตรรกะที่ขับเคลื่อน การเชื่อมต่อระหว่างสองส่วนนี้เท่านั้นควรเป็นสาย 16 เส้นที่แทนตัวเลขสี่หลักในBCD (โดยใช้ลวดเสริมหนึ่งเส้นสำหรับไฟแสดงสถานะ AM / PM และลวดเสริมหนึ่งเส้นสำหรับสัญญาณนาฬิกาสัญญาณหากสัญญาณของคุณไม่ต่อเนื่อง) (แก้ไข: สามารถยกเลิกการเดินสายได้ตลอดศูนย์) เวลาของพฤติกรรมนาฬิกาควรสอดคล้องกัน การจำลองควรใช้จำนวนเห็บเท่ากันสำหรับแต่ละช่วงการเปลี่ยนสถานะระหว่าง 1440 อิเล็กตรอนใด ๆ บนสาย 16 เส้นควรปล่อยออกจากส่วน A ในเวลาเดียวกันและเริ่มการเดินทางแบบขนาน …

30
วาดนาฬิกาทราย
แรงบันดาลใจจากงานเขียนโปรแกรม 101 อีกครั้งเป็นความท้าทายอีกประการหนึ่ง การป้อนข้อมูล: n >= 3เป็นจำนวนเต็มบวก (ต้องเป็นเลขคี่) เอาท์พุท: nบรรทัดของเครื่องหมายดอกจันที่บรรทัดแรกมีnเครื่องหมายดอกจันและทุกบรรทัดใหม่มีเครื่องหมายดอกจันสองตัวน้อยกว่าบรรทัดก่อนหน้า จนกว่าจะกดปุ่มดอกจัน 1 อัน จากนั้นทุกบรรทัดใหม่จะมีเครื่องหมายดอกจันมากกว่าสองบรรทัดก่อนหน้าจนกว่าจะกลับสู่nเครื่องหมายดอกจัน ช่องว่างหรือบางสิ่งบางอย่างเช่นช่องว่างจำเป็นต้องใช้เพื่อจัดตำแหน่งเครื่องหมายดอกจันเพื่อให้ดูเหมือนกับนาฬิกาทรายจริงๆ กฎทั่วไป: ขึ้นบรรทัดใหม่ที่ได้รับอนุญาต แต่ไม่จำเป็นต้องใช้ การเยื้องเป็นสิ่งที่ต้องทำ นี่คือ code-golf ดังนั้นคำตอบที่สั้นที่สุดในจำนวนไบต์ชนะ เนื่องจากหลักสูตรได้รับการสอนใน C ++ ฉันกระตือรือร้นที่จะเห็นวิธีแก้ปัญหาใน C ++ กรณีทดสอบ (n = 5): ***** *** * *** *****

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