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

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

30
ค้นหาโปรแกรมที่พิมพ์ลำดับจำนวนเต็มนี้ (Cops 'thread)
นี่คือด้ายของตำรวจ ด้ายโจรไปที่นี่ สุดท้ายตำรวจและโจรด้ายที่มีอยู่แล้ว4 เดือนที่ผ่านมา ภารกิจของตำรวจ ภารกิจของตำรวจคือการเขียนโปรแกรม / ฟังก์ชั่นที่ใช้จำนวนเต็มบวก (หรือไม่ใช่ลบ) และเอาท์พุท / ส่งกลับจำนวนเต็มอื่น ตำรวจต้องระบุว่าหากโปรแกรมนั้นมีความอดทนต่อศูนย์ ตำรวจจะให้อินพุต / เอาต์พุตตัวอย่างอย่างน้อย2ตัวอย่าง ตัวอย่างเช่นถ้าฉันตัดสินใจที่จะเขียนลำดับฟีโบนักชีฉันจะเขียนคำตอบของฉัน: a (0) ส่งคืน 0 a (3) ส่งคืน 2 จำนวนตัวอย่างขึ้นอยู่กับดุลยพินิจของตำรวจ อย่างไรก็ตามลำดับจะต้องมีอยู่จริงในสารานุกรมออนไลน์ของ Integer Sequences®ดังนั้นจึงไม่มีตัวสร้างตัวเลขสุ่มหลอกให้คุณ:( ตำรวจสามารถซ่อนตัวละครได้มากเท่าที่ต้องการ ตัวอย่างเช่นหากโปรแกรมของฉันคือ: function a(n) if n>2 then return n else return a(n-1) + a(n-2) end end จากนั้นฉันจะซ่อนอักขระเหล่านี้ตามที่ต้องการ: function a(n) if ### …

3
Quine รังสีแข็งตัว
อย่างที่คุณควร (หวังว่า) รู้ว่าควินที่ผ่านการฉายรังสีนั้นเป็นควินที่คุณสามารถลบตัวละครตัวใดตัวหนึ่งออกจากและยังพิมพ์ต้นฉบับต้นฉบับที่ได้รับการแก้ไข สิ่งนี้คือโดยส่วนใหญ่คุณสามารถลบอักขระหนึ่งตัวเท่านั้น มิฉะนั้นทุกอย่างจะพัง นี่คือสิ่งที่มานี้ เป้าหมายของคุณคือสร้างควินที่ผ่านการแผ่รังสีซึ่งสามารถกำจัดตัวละครได้มากที่สุด ภาษาใด ๆ ที่เป็นไปตามกฎนั้นใช้ได้ กฎระเบียบ โปรแกรมต้องมีความยาวอย่างน้อยหนึ่งตัว ภาษาที่ใช้จะต้องทำให้สมบูรณ์ (ภาษาเช่น HQ9 + ไม่ผ่านการรับรอง) กฎอื่น ๆ ทั้งหมดที่ใช้กับ quines ปกติก็ใช้ที่นี่ โซลูชันprogram_length^(2/n)ที่มีชุดnอักขระน้อยที่สุดสามารถถูกลบออกได้ในขณะที่ยังคงพิมพ์รหัสต้นฉบับดั้งเดิมให้ชนะ

29
รหัสใกล้กับความท้าทาย: ผลรวมของจำนวนเต็ม
นี่เป็นความท้าทายที่ง่าย: กำหนดลำดับของจำนวนเต็มหาผลรวมของจำนวนเต็มทั้งหมดในนั้น แต่ด้วยความบิด คะแนนของคุณคือระยะทาง Levenshteinระหว่างรหัสของคุณและวลีต่อไปนี้ (ความท้าทาย): ให้ชุดของจำนวนเต็มหาผลรวมของจำนวนเต็มทั้งหมดในนั้น คุณอาจคิดว่าไม่มีบรรทัดใหม่หรือช่องว่างต่อท้ายในอินพุต ตัวอย่างอินพุต / เอาต์พุต: Input: 1 5 -6 2 4 5 Output: 11 Input: 1 -2 10 Output: 9 เครื่องคิดเลขออนไลน์สำหรับระยะทาง Levenshtein สามารถดูได้ที่นี่: http://planetcalc.com/1721/

13
ฉันต้องการรังผึ้ง
เขียนโปรแกรมที่สั้นที่สุดที่พิมพ์ส่วนศิลปะ ASCII ของการเรียงต่อหกเหลี่ยมหรือรวงผึ้ง : __ __/ \__ __/ \__/ \__ / \__/ \__/ \ \__/ \__/ \__/ / \__/ \__/ \ \__/ \__/ \__/ / \__/ \__/ \ \__/ \__/ \__/ \__/ \__/ \__/ ไม่ควรป้อนข้อมูลใด ๆ ส่งออกไปยัง stdout หรือทางเลือกที่ใกล้เคียงที่สุดในภาษาของคุณ แทนที่จะเป็นโปรแกรมคุณสามารถเขียนฟังก์ชั่นที่มีชื่อซึ่งไม่มีพารามิเตอร์และพิมพ์ผลลัพธ์ได้ตามปกติหรือส่งกลับเป็นสตริง เอาต์พุตอาจมีจำนวนบรรทัดใหม่นำหน้าและ / หรือลากขึ้นบรรทัดใหม่และแต่ละบรรทัดในเอาต์พุตอาจมีช่องว่างนำหน้าและ / หรือช่องว่างจำนวนเท่าใดก็ได้ (ตราบใดที่ลวดลายขึ้นอย่างถูกต้อง) รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ

24
คำนวณผลรวมความแตกต่างของตัวเลข
ลองพิจารณาจำนวนเต็มที่ไม่เป็นลบเช่น 8675309 และคำนวณค่าสัมบูรณ์ของความแตกต่างระหว่างคู่หลักทั้งหมดที่อยู่ใกล้เคียง สำหรับการ8675309ที่เราได้รับ|8-6| = 2, |6-7| = 1, |7-5| = 2, |5-3| = 2, ,|3-0| = 3 คบผลลัพธ์เหล่านี้เข้าด้วยกันอัตราผลตอบแทนอื่นจำนวนเต็มไม่ใช่เชิงลบที่มีขนาดเล็ก:|0-9| = 9 212239ทำซ้ำกระบวนการให้11016แล้ว0115ซึ่งโดยการประชุมที่ศูนย์นำไม่เขียนลดความซับซ้อนเป็น115ซึ่งจะกลายเป็น04หรือ4ซึ่งไม่สามารถลดได้อีกต่อไป 8675309 + 212239 + 11016 + 115 + 4 = 8898683ข้อสรุปค่าทั้งหมดเหล่านี้ที่เราได้รับ ลองกำหนด Digit Difference Sum (หรือ DDS) เป็นการดำเนินการของการรับความแตกต่างของตัวเลขเพื่อสร้างตัวเลขใหม่จากนั้นเพิ่มตัวเลขผลลัพธ์ทั้งหมดลงในต้นฉบับ นี่คือ 20 ค่าแรกในลำดับ DDS ที่เกี่ยวข้อง: N DDS(N) 0 0 1 …

5
เพิ่มตัวเลขด้วย Regex
ฉันต้องการลองความท้าทายกอล์ฟ regex รูปแบบใหม่ซึ่งขอให้คุณแก้ปัญหาการคำนวณแบบไม่ย่อยโดยไม่มีอะไรนอกจากการทดแทน regex เพื่อให้เป็นไปได้มากขึ้นและน้อยลงของงานบ้านคุณจะได้รับอนุญาตให้ใช้การทดแทนหลายอย่างหนึ่งหลังจากที่อื่น ความท้าทาย เราจะเริ่มต้นง่าย: กำหนดสตริงที่มีจำนวนเต็มบวกสองจำนวนโดยที่ตัวเลขทศนิยมคั่นด้วย a ,สร้างสตริงที่มีผลรวมของพวกเขาเช่นเดียวกับเป็นทศนิยม ดังนั้นง่ายมาก 47,987 ควรเปลี่ยนเป็น 1034 คำตอบของคุณควรใช้กับจำนวนเต็มบวกโดยพลการ รูปแบบ ทุกคำตอบควรเป็นลำดับของขั้นตอนการทดแทนแต่ละขั้นตอนประกอบด้วย regex และสตริงการแทนที่ เป็นทางเลือกสำหรับแต่ละขั้นตอนเหล่านี้ในลำดับคุณอาจเลือกที่จะทำซ้ำการทดแทนจนกว่าสตริงจะหยุดการเปลี่ยนแปลง นี่คือตัวอย่างการส่ง (ซึ่งไม่ได้แก้ปัญหาข้างต้น): Regex Modifiers Replacement Repeat? \b(\d) g |$1 No |\d <none> 1| Yes \D g <empty> No รับอินพุต123,456การส่งนี้จะประมวลผลอินพุตดังนี้: การทดแทนแรกจะถูกใช้เพียงครั้งเดียวและให้ผลลัพธ์: |123,|456 ตอนนี้การทดแทนที่สองถูกนำไปใช้ในการวนซ้ำจนกว่าสตริงจะหยุดการเปลี่ยนแปลง 1|23,|456 11|3,|456 111|,|456 111|,1|56 111|,11|6 111|,111| และสุดท้ายการทดแทนที่สามจะถูกนำมาใช้ครั้งเดียว: 111111 …

8
สร้างกำแพงอิฐที่มั่นคง
กำแพงอิฐเป็นรูปสี่เหลี่ยมผืนผ้าที่ทำจากอิฐเรียงต่อกันในแนวตั้ง นี่คือกำแพงที่มีความสูง 4 และความกว้าง 8 โดยมีขนาดอิฐที่แสดงทางด้านขวา [______][______] 4 4 [__][____][__][] 2 3 2 1 [][______][____] 1 4 3 [____][______][] 3 4 1 กำแพงนี้ไม่มั่นคงเนื่องจากมีข้อผิดพลาดสถานที่ที่รอยร้าวแนวตั้งสองแนวระหว่างอิฐเรียงกันดังที่แสดงด้านล่างด้วย parens ในอิฐล้อมรอบ [______][______] [__][____)(__][] [][______)(____] [____][______][] แต่รอยแตกที่ล้อมรอบด้วยก้อนอิฐขนาด 1 ด้านขวาไม่ก่อให้เกิดความผิดพลาดเพราะมันถูกคั่นด้วยแถว เขียนโค้ดที่ค้นหาและแสดงกำแพงที่สร้างขึ้นจากอิฐในขนาดที่กำหนด ไบต์ที่น้อยที่สุดจะเป็นผู้ชนะ อินพุต รายการขนาดอิฐที่ไม่ว่างเปล่า (ตัวเลขบวก) และความสูงอย่างน้อย 2 รายการนี้อาจเรียงลำดับได้หากคุณต้องการ คุณอาจเลือกที่จะนับอิฐแต่ละขนาด เอาท์พุต รูปภาพของกำแพงสี่เหลี่ยมที่มีความสูงที่ต้องการซึ่งใช้อิฐทั้งหมดที่ระบุ พิมพ์หรือส่งคืนเป็นสตริงที่มีบรรทัดใหม่ วาดก้อนอิฐขนาด n เป็นอักขระ 2n ขีดล่างล้อมรอบด้วยวงเล็บ 1: …

1
สร้าง chatbot สำหรับห้องสนทนา Stack Exchange
ความท้าทาย เป้าหมายของความท้าทายนี้คือการสร้าง chatbot ที่สามารถทำงานได้ใน chatrooms ของ Stack Exchange บอตของคุณต้องสามารถตรวจจับได้เมื่อผู้ใช้โพสต์คำสั่งเฉพาะและตอบกลับ นี่คือรายการคำสั่งและสิ่งที่บอทของคุณควรทำ: !!newest: แสดงชื่อ (ไม่มีลิงก์ แต่เป็นชื่อ) ของคำถามล่าสุดที่โพสต์บนเว็บไซต์นี้ (codegolf.SE) !!metanewest: แสดงชื่อคำถามล่าสุดที่โพสต์บนเว็บไซต์ meta (meta.codegolf.SE) !!questioncount: เอาท์พุทนับคำถามปัจจุบัน !!metaquestioncount: แสดงผลจำนวนคำถามปัจจุบันบนไซต์เมตา !!tag tagname: เอาท์แท็กข้อความที่ตัดตอนมา (คำอธิบายสั้น ๆ ) ของแท็กที่ได้รับเป็นพารามิเตอร์แรก !!metatag tagname: เหมือนด้านบน แต่สำหรับไซต์เมตา !!featured: เอาท์พุทนับคำถามที่ปัจจุบันมีความโปรดปราน !!metafeatured: แสดงจำนวนคำถามที่มีแท็ก[เด่น]บน Meta กฎระเบียบ คุณควรเขียนโปรแกรมที่สมบูรณ์ไม่ใช่ตัวอย่างหรือฟังก์ชั่น ในกรณีที่จำเป็นคุณสามารถขอชื่อผู้ใช้และรหัสผ่านเป็นอินพุต (พร้อมท์ใส่, STDIN, อาร์กิวเมนต์บรรทัดคำสั่ง) สิ่งนี้จะจำเป็นถ้าคุณใช้เช่น Python หรือ Ruby …
39 code-golf 

14
การเขียนโปรแกรมด้วย Sporadic Shift Key
แป้นพิมพ์ของคุณมีบางอย่างผิดปกติ Shiftที่สำคัญมีความคิดของตัวเอง ทุกครั้งที่คุณพิมพ์ตัวละครคุณจะไม่รู้เลยว่ามันจะออกมาหรือไม่ (แม้ว่าจะเป็น 50-50) นอกจากปุ่มอักขระมาตรฐานแล้วไม่มีอะไรบนแป้นพิมพ์ที่ใช้งานได้ ไม่มีเมาส์หรือวิธีการอินพุตอื่น อย่างใดคุณก็รู้วิธีเดียวที่จะแก้ไขสิ่งต่าง ๆ คือการเขียนโปรแกรมที่ส่งออกDear Computer, please stop giving me shift!ไปยัง stdout โชคดีที่ IDE ของคุณเปิดอยู่และคุณสามารถเรียกใช้โปรแกรมได้ แต่แน่นอนว่าเมื่อคุณพิมพ์คุณจะไม่ทราบว่าตัวละครใดที่จะถูกเลื่อน คุณจะใช้ลำดับของการกดปุ่มใดในการเขียนโปรแกรมที่มีโอกาสที่ดีที่สุดในการลองครั้งแรก รายละเอียด คุณกำลังใช้แป้นพิมพ์ QWERTY มาตรฐานดังนั้นจึงมี 50 ตัวอักษรที่คุณสามารถกดได้ รุ่นที่ไม่เปลี่ยนแปลง (47 เท่านั้น): `1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./ รุ่นที่เปลี่ยน (47 เท่านั้น): ~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>? 3 ปุ่มสุดท้ายคือEnter, TabและSpace, ซึ่งเหมือนกันคือเลื่อนและไม่เปลี่ยน ลำดับของ N ของตัวละครเหล่านี้มี 2 N - (จำนวนช่องว่าง)วิธีที่มันอาจจะถูกส่งออกถ้าคุณพิมพ์ด้วยแป้นพิมพ์ผิดพลาดของคุณ ยกตัวอย่างเช่นการพิมพ์A Space mอาจมีผล …

9
ตัวตรวจสอบ“ สะดวก palindrome”
หากคุณเคยพยายามที่จะเขียนรหัส palindromic มาก่อนคุณจะรู้ว่ามีแนวโน้มที่จะได้รับในวงเล็บของคุณ ()()ไม่ใช่ palindrome แม้ว่ามันดูเหมือนว่ามันควรจะเป็นในขณะที่())(และ()(มีทั้ง palindromic และทั้งสองมองเป็นใบ้ มันจะไม่สะดวกถ้ามันเป็นอย่างอื่น? สตริงเป็นpalindromic สะดวกถ้ามันเท่ากับสตริงที่ได้รับเมื่อ reverse มีวงเล็บ ( ()), วงเล็บ ( []) และวงเล็บปีกกา ( {}) ทั้งหมด ไม่มีตัวละครอื่นที่พิเศษและต้องการการพลิก ( <>บางครั้งมีการจับคู่ แต่มักจะไม่ถูกปล่อยออกไป) งานของคุณคือการเขียนในภาษาของคุณโปรแกรม (รับอินพุตบน STDIN) หรือฟังก์ชั่น (รับอาร์กิวเมนต์สตริงเดี่ยว) ซึ่ง (a) ให้ค่าจริงที่สอดคล้องกัน * เมื่ออาร์กิวเมนต์มีความสะดวก Palindromic และเท็จที่สอดคล้องกัน ค่าเป็นอย่างอื่นและ (b) เป็นตัวเองอย่างสะดวก palindromic ตัวอย่างเช่นอินพุตต่อไปนี้เป็นแบบ palindromic: racecar (a)(bb)(a) void main(int argc, *char[] …

6
เพื่อ Vectory! - Vector Racing Grand Prix
ผู้ใช้ CarpetPython โพสต์สิ่งใหม่เกี่ยวกับปัญหานี้ซึ่งให้ความสำคัญกับโซลูชั่นฮิวริสติกมากขึ้นเนื่องจากมีพื้นที่การค้นหาเพิ่มขึ้น โดยส่วนตัวฉันคิดว่าความท้าทายนั้นดีกว่าของฉันมากดังนั้นลองพิจารณาดูสิ! Vector racing เป็นเกมเสพติดที่สามารถเล่นได้ด้วยปากกาและแผ่นกระดาษสี่เหลี่ยมจตุรัส คุณวาดสนามแข่งตามอำเภอใจลงบนกระดาษกำหนดจุดเริ่มต้นและจุดสิ้นสุดจากนั้นให้คุณควบคุมรถขนาดจุดของคุณในลักษณะเลี้ยว ไปให้ถึงจุดสิ้นสุดให้เร็วที่สุดเท่าที่จะทำได้ แต่ระวังอย่าให้ถูกกำแพง! ติดตาม แผนที่เป็นกริดสองมิติโดยที่แต่ละเซลล์มีพิกัดจำนวนเต็ม คุณย้ายไปที่เซลล์กริด เซลล์กริดแต่ละเซลล์เป็นส่วนหนึ่งของแทร็กหรือเป็นกำแพง หนึ่งเซลล์ติดตามคือพิกัดเริ่มต้น มีการกำหนดอย่างน้อยหนึ่งเซลล์การติดตามเป็นเป้าหมาย การลงจอดบนสิ่งเหล่านี้เสร็จสิ้นการแข่งขัน เซลล์เป้าหมายหลายเซลล์ไม่จำเป็นต้องเชื่อมต่อ ขับรถ (0, 0)รถของคุณเริ่มต้นที่ได้รับการประสานงานและด้วยความเร็วเวกเตอร์ ในแต่ละเทิร์นคุณสามารถปรับแต่ละส่วนของความเร็ว±1ได้ จากนั้นเวกเตอร์ความเร็วที่ได้จะถูกเพิ่มไปยังตำแหน่งรถของคุณ ภาพอาจช่วยได้! วงกลมสีแดงคือตำแหน่งของคุณในที่สุด วงกลมสีน้ำเงินคือตำแหน่งปัจจุบันของคุณ ความเร็วของคุณคือเวกเตอร์จากสีแดงถึงวงกลมสีน้ำเงิน ในเทิร์นนี้ขึ้นอยู่กับวิธีที่คุณปรับความเร็วของคุณคุณอาจย้ายไปยังวงกลมสีเขียวใด ๆ หากคุณที่ดินในผนังที่คุณสูญเสียทันที งานของคุณ คุณเดา: เขียนโปรแกรมที่ให้สนามแข่งเป็นอินพุทนำพารถไปยังเซลล์เป้าหมายหนึ่งในไม่กี่รอบเท่าที่จะทำได้ โซลูชันของคุณควรสามารถจัดการแทร็กตามอำเภอใจได้ดีพอสมควรและไม่ได้รับการปรับให้เหมาะสมกับกรณีทดสอบที่มีให้โดยเฉพาะ อินพุต เมื่อโปรแกรมของคุณถูกเรียกใช้อ่านจาก stdin : target n m [ASCII representation of an n x m racetrack] time …

8
ตำแหน่งเรือประจัญบานขี้เกียจ
ลองนึกภาพสถานการณ์ต่อไปนี้: คุณกำลังเล่นเรือรบกับเพื่อน แต่ตัดสินใจที่จะโกง แทนที่จะย้ายเรือหลังจากที่เขายิงจุดที่เรือของคุณเคยเป็นคุณตัดสินใจที่จะไม่วางเรือใด ๆ เลย คุณบอกเขาว่าทุกช็อตของเขาพลาดไปจนกว่าจะไม่สามารถวางเรือในลักษณะนี้ได้ คุณต้องเขียนฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบที่ใช้เวลา 3 ข้อโต้แย้ง: ขนาดฟิลด์รายการจำนวนขนาดของเรือและรายการของภาพ สนามรบ หนึ่งในพารามิเตอร์ที่กำหนดคือขนาดกระดาน สนามรบเป็นรูปสี่เหลี่ยมจัตุรัสของเซลล์และพารามิเตอร์ที่กำหนดเป็นเพียงด้านเดียวของจัตุรัส ตัวอย่างเช่นต่อไปนี้เป็นบอร์ดขนาด 5 พิกัดบนฟิลด์ถูกระบุเป็นสตริง 2 องค์ประกอบ: ตัวอักษรตามด้วยตัวเลข คุณสามารถพึ่งพาตัวอักษรในบางกรณี ตัวอักษรระบุคอลัมน์ตัวเลขระบุแถวของเซลล์ (1 ดัชนี) "D2"ยกตัวอย่างเช่นในภาพข้างบนเซลล์ที่ไฮไลต์คือการแสดงโดย เนื่องจากมีเพียง 26 ตัวอักษรสนามจึงไม่สามารถมีขนาดใหญ่กว่า 26x26 เรือ เรือเป็นเส้นตรงที่มี 1 บล็อกขึ้นไป จำนวนเรือถูกระบุในรายการโดยที่องค์ประกอบแรกคือจำนวนเรือ 1 เซลล์สอง - จากเรือ 2 เซลล์และอื่น ๆ ตัวอย่างเช่นรายการ[4,1,2,0,1]จะสร้างชุดต่อไปนี้: เมื่อวางไว้ในสนามรบเรือไม่สามารถตัดกันหรือแม้แต่แตะต้องกัน ไม่แม้แต่กับมุม อย่างไรก็ตามพวกเขาสามารถสัมผัสขอบของสนาม ด้านล่างคุณสามารถดูตัวอย่างของการจัดส่งที่ถูกต้อง: คุณสามารถสันนิษฐานได้ว่าสำหรับเรือที่ได้รับนั้นจะมีตำแหน่งบนกระดานเปล่าตามขนาดที่กำหนด เอาท์พุต หากตำแหน่งของเรือดังกล่าวมีอยู่คุณจะต้องแสดงผลลัพธ์ใด ๆ …

8
ตามล่า Wumpus
ตอนที่ฉันยังเป็นเด็กอยู่เด็ก ๆ จะเดินเข้าไปในร้านคอมพิวเตอร์และเล่น Hunt the Wumpus จนกว่าพนักงานจะเตะเราออกไป มันเป็นเกมง่ายๆที่เขียนโปรแกรมได้ที่คอมพิวเตอร์ที่บ้านในช่วงกลางปี ​​1970 เครื่องจักรจึงเป็นพื้นฐานที่แทนที่จะเป็นไมโครโปรเซสเซอร์ที่มีขนาดเท่าลูกไก่ฉันคิดว่าบางคนอาจมีลูกไก่ตัวจริงอยู่ในนั้น มาสร้างยุคสมัยนั้นด้วยการจำลองเกมบนฮาร์ดแวร์ที่ทันสมัย ผู้เล่นเริ่มต้นในห้องสุ่มบนแผนที่ icosahedral (ดังนั้นมีทั้งหมด 20 ห้องเชื่อมต่อกันเหมือนใบหน้าของ icosahedron และทุกห้องมีทางออกสามทาง) Wumpus เริ่มต้นในห้องอื่นที่สุ่มเลือก และกลิ่นของมันสามารถตรวจจับได้ในห้องใดห้องหนึ่งในสามห้องที่อยู่ติดกับที่ตั้งแม้ว่าจะไม่สามารถบอกทิศทางของกลิ่นได้ เกมรายงานเฉพาะ "คุณได้กลิ่น wumpus" ผู้เล่นถือธนูและลูกธนูจำนวนอนันต์ซึ่งเขาสามารถยิงได้ตลอดเวลาเข้าไปในห้องด้านหน้าของเขา หากวุสปัสอยู่ในห้องนั้นจะตายและผู้เล่นชนะ หากวุสตัสไม่ได้อยู่ในห้องนั้นจะตกใจและย้ายไปยังห้องใดห้องหนึ่งในสามห้องที่เชื่อมต่อกับที่ตั้งปัจจุบัน หนึ่งห้องที่เลือกแบบสุ่ม (รับประกันว่าจะไม่เป็นห้องที่ผู้เล่นเริ่ม) มีหลุมที่ลึกที่สุด หากผู้เล่นอยู่ในห้องใด ๆ ที่อยู่ติดกับหลุมเขารู้สึกถึงลม แต่ไม่มีเงื่อนงำว่าประตูสายลมมาจากไหน ถ้าเขาเดินเข้าไปในห้องพร้อมกับหลุมเขาตายและ wumpus ชนะ Wumpus ไม่ได้รับผลกระทบจากหลุม หากผู้เล่นเดินเข้าไปในห้องของ wumpus หรือถ้า wumpus เดินเข้าไปในห้องของผู้เล่น wumpus จะชนะ ผู้เล่นระบุทิศทางที่เขาเผชิญกับตัวเลข (1 = ขวา, …

7
การวาดภาพเคลื่อนไหวของเส้นโค้งเบซิเยร์
งานของคุณคือการวาดเส้นโค้งเบซิเยร์เนื่องจากเป็นจุดควบคุม เกณฑ์เดียวคือคุณต้องแสดงให้เห็นถึงวิธีการวาดเส้นโค้งจากจุดควบคุมเริ่มต้นไปยังจุดสุดท้าย เกณฑ์ ผลลัพธ์จะต้องเป็นภาพเคลื่อนไหวเช่นต้องแสดงขั้นตอนการวาดภาพอย่างใด วิธีที่คุณทำแอนิเมชั่นนั้นไม่เกี่ยวข้องมันสามารถสร้าง a .gifสามารถวาดไปที่หน้าต่างหรือสร้างผลลัพธ์ ASCII (และอาจล้างหน้าจอหลังจากการจับแต่ละครั้ง) ฯลฯ ต้องรองรับจุดควบคุมอย่างน้อย 64 จุด นี่คือการประกวดความนิยมดังนั้นคุณอาจต้องการเพิ่มฟีเจอร์เพิ่มเติมบางอย่างในโปรแกรมของคุณเพื่อรับการอัปโหลดเพิ่มเติม (คำตอบของฉันเช่นดึงจุดควบคุมและความช่วยเหลือด้านภาพเกี่ยวกับวิธีสร้างภาพด้วย) ผู้ชนะคือคำตอบที่ถูกโหวตมากที่สุดที่ถูกต้อง 7 วันหลังจากการส่งที่ถูกต้องครั้งสุดท้าย การส่งของฉันไม่นับว่าถูกต้อง วิธีการวาดเส้นโค้งเบซิเยร์ สมมติว่าเราต้องการวาด 100 การวนซ้ำ เพื่อให้ได้nจุดที่โค้งคุณสามารถใช้อัลกอริทึมต่อไปนี้: 1. Take each adjanced control point, and draw a line between them 2. Divide this line by the number of iterations, and get the nth point …

30
เขียนคำพังเพยโดยใช้รหัสที่ถูกต้อง [ปิด]
คุณสามารถเขียนคำพังเพยในโค้ดได้ไม่เกิน 4 บรรทัด? trueรหัสควรอ่านมากที่สุดเท่าที่เป็นไปได้ในฐานะที่เป็นคำพังเพยในภาษาอังกฤษธรรมดาและควรกลับแบบบูล ภาษา: ทางเลือก เกณฑ์สำหรับคำตอบที่ยอมรับ: คะแนนโหวตมากที่สุดใน 180 30วัน (8 วันของกรกฎาคม 2014) ความคิดริเริ่ม: อาจเป็นคำพังเพยแบบเก่า แต่คนที่มีความคิดสร้างสรรค์จะได้รับการชื่นชมมากกว่านี้มาก

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