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

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

18
แฮคเกอร์สองภาพขาวดำ
ท้าทาย: ใช้อินพุตของภาพขาวดำ (ขาวดำ) สองภาพและ xor แต่ละพิกเซลของภาพแรกด้วยแต่ละพิกเซลที่สองเพิ่มภาพเหล่านั้นลงในภาพใหม่และส่งภาพใหม่ คำอธิบายบางอย่าง: ขนาดของรูปภาพไม่สำคัญ รูปแบบส่วนขยาย / รูปภาพไม่สำคัญ คุณสามารถทำให้มันรับอินพุตส่วนขยายใด ๆ และเอาท์พุทส่วนขยายใด ๆ ตราบเท่าที่ส่วนขยายจะใช้ในการจัดเก็บภาพดิจิตอล นอกจากนี้คุณยังสามารถใช้กราฟิกเพื่อวาดผลลัพธ์เช่น: กล่องภาพถ้าคุณต้องการ มิฉะนั้นให้บันทึกผลลัพธ์เป็นไฟล์ อินพุตสามารถใช้เป็นเส้นทางไปยังรูปภาพหรือ URL สิ่งหนึ่งที่คุณไม่สามารถทำได้คืออาร์เรย์ I / O เช่น ของ triplets (R, G, B) ไม่ยุ่งเกี่ยวกับอัลฟา ไม่ควร xored ควรเป็น 255 (ค่าสูงสุด) สำหรับทุกพิกเซล คุณหมายถึง xor แต่ละพิกเซล คุณไม่ต้องทำแบบนี้ แต่ทางเดียวที่จะทำให้ xor สองพิกเซลคือการใช้ค่า RGB และ xor R1 กับ …

30
พิมพ์ตัวอักษร Fibonacci
รับN (2 <= N ) พิมพ์Nบรรทัดของชุดตัวอักษร Fibonacci เช่นนี้ (เช่นN = 5) ก่อนอื่นให้เริ่มด้วยaและb: a b ถัดไปเพิ่มสองบรรทัด a b ab เพิ่มสองบรรทัดสุดท้ายต่อไป a b ab bab ทำต่อไป... a b ab bab abbab และเราทำเสร็จแล้ว โปรดจำไว้ว่านี่คือรหัสกอล์ฟดังนั้นโค้ดที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ

13
เคล็ดลับการตีกอล์ฟใน 05AB1E
คุณมีเคล็ดลับสำหรับการเล่นโค้ดใน05AB1Eภาษากอล์ฟที่สร้างโดยAdnanหรือไม่? เคล็ดลับของคุณควรเป็นอย่างน้อยสำหรับ 05AB1E กรุณาโพสต์หนึ่งเคล็ดลับต่อคำตอบ
28 code-golf  tips 

1
รับรายการวงกลมส่งออกพื้นที่ของสี่เหลี่ยมที่เล็กที่สุดที่มี
คุณจะได้รับรายชื่อรัศมีคุณจะต้องส่งออกพื้นที่ของสี่เหลี่ยมเล็ก ๆ ที่พวกเขาจะพอดี ตัวอย่างเช่นกำหนดรายการที่คุณจะเอาท์พุท[5,3,1.5]157.460 นี่คือภาพ: ความกว้างคือ 15.7460 และความสูงคือ 10 ดังนั้นพื้นที่คือ 157.460 กฎ: คุณได้รับรายการผ่าน stdin หรือฟังก์ชันอาร์กิวเมนต์เอาท์พุทคำตอบผ่าน stdout หรือฟังก์ชันส่งคืน รัศมีจะมีทศนิยมได้ไม่เกิน 2 ตำแหน่ง รายการจะมีความยาวระหว่าง 2 ถึง 6 ผลลัพธ์ควรมีความถูกต้องถึงทศนิยม 3 ตำแหน่งหรือมากกว่า หากคุณต้องการπ = 3.1416 กรณีทดสอบ: [5,3,1.5] = 157.460 [9,4,8,2] = 733.431- การทำงานที่นี่ [18,3,1] = 1296.000 รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ

7
ถอดรหัสกบที่มีอาการทางประสาท
ถอดรหัสกบที่มีอาการทางประสาท ตอนนี้ Puzzling.SE ในที่สุดก็ถอดรหัสรหัสสัตว์ครึ่งบกครึ่งน้ำที่หมกมุ่นอยู่แล้วลองเขียนโปรแกรมหรือฟังก์ชั่นเพื่อถอดรหัส! (ถ้าคุณต้องการที่จะดูปริศนาก่อนที่มันจะเสียสำหรับคุณคลิกที่ลิงค์ด้านบนทันที) วิธีการทำงานของรหัส ในโรคประสาทกบO ught การ Rel x ในM UD Baths ( "โรคประสาทกบ" สำหรับระยะสั้น) ทุกตัวอักษรจะถูกเข้ารหัสเป็นหนึ่งหรือสองคำ: ความยาวของคำที่ไม่ใช่ตัวเอียงหมายถึงตัวอักษร neurotic => 8 ตัวอักษร => H frogs => 5 ตัวอักษร => E perpendicular => 13 ตัวอักษร = M คำที่มีตัวเอียงปรับเปลี่ยนคำต่อไปนี้เพิ่ม 10 ถ้าคำตัวเอียงเป็นความยาวคี่หรือ 20 ถ้าคำตัวเอียงเป็นแม้ในความยาว คำใดคำหนึ่งหรือทั้งหมดอาจเป็นตัวเอียง คำที่เป็นตัวเอียงจะตามด้วยคำที่ไม่ใช่ตัวเอียงเสมอ *o*ught to => คี่ 2 => …

8
ทุกคนอยู่ด้วยกันได้มากขึ้น
(ที่เกี่ยวข้อง: หนึ่ง , สอง , สาม ) โคลงกระทู้เป็นรูปแบบของบทกวี / เขียนที่ตัวละครเริ่มต้นของแต่ละบรรทัดเมื่ออ่านในแนวตั้งยังผลิตคำหรือข้อความ ตัวอย่างเช่น, Together Everyone Achieves More ยังสะกดคำTEAMเมื่อคอลัมน์แรกอ่านในแนวตั้ง Acrostics เป็นเซตย่อยของmesostic s ซึ่งคำแนวตั้งสามารถอยู่ที่ใดก็ได้ในคำแนวนอน ยกตัวอย่างเช่นตัวTEAMหนึ่งที่กล่าวมาข้างต้นนั้นยังสามารถเขียนเป็นหมอผีได้ดังต่อไปนี้ togeTher everyonE Achieves More พร้อมกับความหลากหลายอื่น ๆ ความท้าทายที่นี่จะเป็นการผลิตแบบอะโครสทิกหรือผู้รอบรู้จากรายการคำศัพท์ที่ป้อนเข้ามา อินพุต ชื่อของคำในใด ๆรูปแบบที่เหมาะสมใด ๆ [a-z]รายการจะมีคำที่ทำจากตัวพิมพ์เล็ก รายการรับประกันในรูปแบบ acrostic หรือผู้รอบรู้ (ไม่จำเป็นต้องจัดการอินพุตปลอม) หนึ่งคำในอินพุตจะสร้างคำในแนวตั้งในขณะที่คำที่เหลือจะสร้างคำในแนวนอนซึ่งเป็นส่วนหนึ่งของความท้าทายที่นี่คือการค้นหาคำในแนวตั้งที่เหมาะสมดังนั้นจึงไม่สามารถแยกได้ เอาท์พุต ASCII-art acrostic หรือ mesostic ที่เกิดขึ้นจากคำอินพุตเขียนไปยัง STDOUT หรือส่งคืนในรูปแบบที่เหมาะสม คำในแนวตั้งที่เกี่ยวข้องจะต้องเป็นตัวพิมพ์ใหญ่ (ดังในตัวอย่าง) ช่องว่างนำเพื่อให้ได้คำแนวตั้งเข้าแถวอย่างเหมาะสมจะต้อง ช่องว่างต่อท้ายและขึ้นบรรทัดใหม่ …

12
การหมุนสองครั้ง
คำอธิบายการท้าทาย วนตัวอักษรทั้งหมดจากส่วนแรกของตัวอักษรในทิศทางเดียวและตัวอักษรจากครึ่งหลังของตัวอักษรในอีกทิศทางหนึ่ง ตัวละครอื่น ๆ อยู่ในสถานที่ ตัวอย่าง 1: สวัสดีชาวโลก Hello_world //Input Hell ld //Letters from first half of alphabet o wor //Letters from second half of alphabet _ //Other characters dHel ll //Cycle first letters w oro //Cycle second letters _ //Other characters stay dHelw_oroll //Solution 2: codegolf codegolf c deg …
28 code-golf 

30
ฟังก์ชั่นการนับเฉพาะ
บทนำ ฟังก์ชั่นการนับนายกรัฐมนตรียังเป็นที่รู้จักฟังก์ชั่น Pi กลับปริมาณของจำนวนเฉพาะที่น้อยกว่าหรือเท่ากับ xπ(x)π(x)\pi(x) ท้าทาย โปรแกรมของคุณจะใช้จำนวนเต็ม x ซึ่งคุณสามารถถือว่าเป็นค่าบวกและส่งออกจำนวนเต็มเดียวเท่ากับจำนวนช่วงเวลาที่น้อยกว่าหรือเท่ากับ x นี่คือความท้าทายของรหัส - กอล์ฟดังนั้นผู้ชนะจะเป็นโปรแกรมที่มีจำนวนไบต์น้อยที่สุด คุณสามารถใช้ภาษาใดก็ได้ที่คุณเลือกหากมีอยู่ก่อนที่ความท้าทายนี้จะเกิดขึ้น แต่ถ้าภาษานั้นมีฟังก์ชั่นการนับจำนวนเฉพาะหรือฟังก์ชั่นตรวจสอบเบื้องต้น (เช่น Mathematica) ฟังก์ชันนั้นไม่สามารถใช้ในรหัสของคุณได้ . อินพุตตัวอย่าง อินพุต: 1 เอาต์พุต: 0 อินพุต: 2 เอาต์พุต: 1 อินพุต: 5 เอาต์พุต: 3 A000720 - OEIS

23
ระยะทางสตริง
ท้าทาย กำหนดอินพุตของสตริงตัวพิมพ์เล็กทั้งหมด[a-z]เอาท์พุทระยะทางรวมระหว่างตัวอักษร ตัวอย่าง Input: golf Distance from g to o : 8 Distance from o to l : 3 Distance from l to f : 6 Output: 17 กฎระเบียบ ช่องโหว่มาตรฐานต้องห้าม นี่คือcode-golf - คำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ ตัวอักษรสามารถข้ามจากทิศทางใดก็ได้ คุณต้องใช้เส้นทางที่สั้นที่สุดเสมอ (เช่นระยะห่างระหว่างxและcคือ 5) กรณีทดสอบ Input: aa Output: 0 Input: stack Output: 18 Input: zaza Output: 3 …

7
ประนอมภาษาอังกฤษ
คำประสมคือคำที่มี 2 คำขึ้นไป เราสามารถทำได้ดีกว่านั้น เราต้องการให้คุณสร้าง 1 (ไร้สาระ) คำที่มีทุกคำ อย่างไรก็ตามเราต้องการให้คำนี้สั้นที่สุด เราสามารถใช้ตัวอักษรที่ทับซ้อนกันเพื่อให้บรรลุสิ่งนี้ ตัวอย่างเช่นถ้ารายการคำของคุณคุณจะต้องการที่จะกลับ["cat", "atom", "a"]"catom" Input / Output โปรแกรมของคุณจะต้องใช้รายการคำเป็นอินพุตและส่งคืนคำประสมเป็นเอาท์พุท รายการคำที่คุณจะใช้คือ10,000 คำบนสุดในภาษาอังกฤษตาม Google (หากรายการนี้กลายเป็นเรื่องง่ายเกินไปฉันอาจเปลี่ยนเป็นคำที่ยาวกว่า) สำหรับการอ้างอิงเพียงต่อท้ายแต่ละคำจะให้คะแนน 65888 คะแนนของคุณคือจำนวนตัวอักษรในคำสุดท้ายของคุณต่ำกว่าดีกว่า ไทเกอร์เบรกเกอร์จะไปที่โปสเตอร์แรก

17
วาดกระดาน Scrabble เปล่า
บอร์ดScrabbleมาตรฐานคือ 15 × 15 ตารางช่องว่างเพื่อวางแผ่นตัวอักษร ช่องว่างส่วนใหญ่จะว่างเปล่า แต่บางพื้นที่เป็นคะแนนคำสองคำ (สีชมพู) คะแนนสามคำ (สีแดง) คะแนนตัวอักษรคู่ (สีฟ้าอ่อน) และคะแนนตัวอักษรสามตัว (สีน้ำเงิน) โดยปกติแล้วจะมีดาวอยู่ตรงกลาง (ซึ่งนับเป็นคะแนนคำคู่) เขียนโปรแกรมหรือฟังก์ชั่นที่ส่งออกบอร์ด Scrabble แบบมาตรฐานเปล่าในรูปแบบ ASCII โดยที่: . แสดงถึงพื้นที่ว่าง D แสดงคะแนนสองคำ T แสดงคะแนนสามคำ d หมายถึงคะแนนตัวอักษรสองครั้ง t แสดงถึงคะแนนตัวอักษรสามตัว X แสดงถึงดาวศูนย์ นั่นคือผลลัพธ์ที่แน่นอนของคุณจะต้องเป็น T..d...T...d..T .D...t...t...D. ..D...d.d...D.. d..D...d...D..d ....D.....D.... .t...t...t...t. ..d...d.d...d.. T..d...X...d..T ..d...d.d...d.. .t...t...t...t. ....D.....D.... d..D...d...D..d ..D...d.d...D.. .D...t...t...D. T..d...T...d..T เลือกที่จะตามด้วยขึ้นบรรทัดใหม่ …

22
แปลงเลขชี้กำลังเป็นรูปแบบ ASCII
งาน งานของคุณคือการแปลงสตริงเช่นนี้ abc^d+ef^g + hijk^l - M^NO^P (Ag^+) ในสตริงเช่นนี้: d g l N P + abc +ef + hijk - M O (Ag ) ซึ่งเป็นการประมาณให้ abc d + ef g + hijk l - M N O P (Ag + ) ในคำให้ยกอักขระโดยตรงถัดจากเครื่องหมายรูปหมวกไปที่บรรทัดบนอักขระหนึ่งตัวสำหรับหนึ่งเครื่องหมายรูปหมวก รายละเอียด อนุญาตให้มีช่องว่างต่อท้ายพิเศษในเอาต์พุตได้ ไม่มีคาเร็ตที่ถูกผูกมัดเหมือนm^n^oจะถูกให้เป็นอินพุต เครื่องหมายรูปหมวกจะไม่ถูกตามด้วยช่องว่างหรือเครื่องหมายรูปหมวกอีกทันที เครื่องหมายรูปหมวกจะไม่ถูกนำหน้าด้วยช่องว่างทันที คาเร็ตทั้งหมดจะถูกนำหน้าด้วยอักขระอย่างน้อยหนึ่งตัวและตามด้วยอักขระอย่างน้อยหนึ่งตัว สตริงอินพุตจะมีอักขระ ASCII …

30
Tranthlator lithp
เพื่อนของฉันทำนักแปลเสียงกระเพื่อมในวันอื่น ๆ นั่นก็คือมันใช้เชือกและแปลง s => th และ S => Th มันค่อนข้างยาวและฉันคิดว่ามันสามารถเล่นกอล์ฟได้ ดังนั้นงานคือการสร้างโปรแกรม / ฟังก์ชั่นที่รับสายป้อนเข้าแปลมันเป็นเสียงกระเพื่อมและเอาท์พุทสตริง กรณีทดสอบ Sam and Sally like Sheep Tham and Thally like Thheep Sally likes sausages Thally liketh thauthageth Sally sells seashells Thally thellth theathhellth โปรดทราบว่าไม่สำคัญว่า h จะถูกทำซ้ำตลอดเวลา นี่คือรหัสกอล์ฟเพื่อให้ได้คำตอบที่สั้นที่สุดชนะ
28 code-golf  string 

26
นี่เป็นเลข Smith หรือไม่?
คำอธิบายการท้าทาย จำนวนสมิ ธเป็นคอมโพสิตจำนวนรวมที่มีตัวเลขเท่ากับผลรวมของผลรวมของตัวเลขของปัจจัยสำคัญของตน รับจำนวนเต็มNตรวจสอบว่ามันเป็นจำนวนสมิ ธ หรือไม่ ครั้งแรกที่ตัวเลขสมิ ธ ไม่กี่4, 22, 27, 58, 85, 94, 121, 166, 202, 265, 274, 319, 346, 355, 378, 382, 391, 438(ลำดับA006753ใน OEIS) ตัวอย่างอินพุต / เอาต์พุต 18: False (sum of digits: 1 + 8 = 9; factors: 2, 3, 3; sum of digits of factors: 2 …

16
บิดเบือนความจริงสั้น ๆ
ค้นหาความจริงที่ยาวนานที่สุดในรายการบูลีน ส่งคืนรายการเดียวกันพร้อมกับความจริงอื่น ๆ ทั้งหมดที่เท็จ อินพุตเอาต์พุต รายการ; รูปแบบปกติใด ๆ (เช่นรายการที่คั่นด้วยสตริง) รายละเอียด จริงและเท็จสามารถเป็นอะไรก็ได้ที่ภาษาของคุณมักใช้สำหรับค่าเหล่านั้นหรือจำนวนเต็ม 1 และ 0 หากคุณใช้อักขระเดี่ยวรายการอาจเป็นการต่อกัน (เช่น10001) หากมีการเสมอกันสำหรับการวิ่งที่ยาวที่สุดให้วิ่งการวิ่งทั้งหมดเป็นจริงและปลอมแปลงการวิ่งที่สั้นกว่าทั้งหมด ตัวอย่าง input ↦ output 1,0,1,0,1 ↦ 1,0,1,0,1 1,1,0,1,1,0,1 ↦ 1,1,0,1,1,0,0 1,1,0,1,1,1,0,1,1 ↦ 0,0,0,1,1,1,0,0,0 1,1,1 ↦ 1,1,1 0,0,1 ↦ 0,0,1 0,0 ↦ 0,0 1,1,1,0,0,0,1,1,1,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0 ↦ 0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0 (โดยตรงจากhttps://stackoverflow.com/q/37447114 )

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