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

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

9
De-Parenthesizing สตริง
กำหนดสตริงที่วงเล็บให้ถูกต้องเป็นอินพุตเอาต์พุตรายการของสตริงย่อยที่ไม่ว่างทั้งหมดภายในวงเล็บที่ตรงกัน แต่ละสตริงย่อยควรเป็นลำดับของอักขระในวงเล็บที่ตรงกันตรงกันทุกประการ ควรระบุรายการซับสเตอรตามลําดับความลึกและแสดงซับสตริปที่มีความลึกเท่ากันตามลําดับที่เกิดขึ้นในสตริง สมมติว่าอินพุตถูกวงเล็บอย่างถูกต้องเสมอ คุณอาจสันนิษฐานว่าอินพุตมีตัวอักษรและวงเล็บ ASCII ตัวพิมพ์เล็กเท่านั้น คำตอบของคุณควรเป็นฟังก์ชั่นที่ส่งคืนรายการสตริง ตัวอย่าง: 'a(b)c(d)e' -> ['ace', 'b', 'd'] 'a(b(c)d)e' -> ['ae', 'bd', 'c'] 'a((((b))))' -> ['a', 'b'] 'a()b' -> ['ab'] '' -> [] 'a' -> ['a'] '(((a(b)c(d)e)f)g)h' -> ['h', 'g', 'f', 'ace', 'b', 'd'] 'ab(c(((d)ef()g)h()(i)j)kl)()' -> ['ab', 'ckl', 'hj', 'efg', 'i', 'd'] ไบต์ที่น้อยที่สุดจะเป็นผู้ชนะ

3
Starry Metagolf
Starryเป็นภาษาการเขียนโปรแกรมที่ลึกลับซึ่งประกอบไปด้วยรหัส+*.,`'ที่คำสั่งจริงที่แสดงโดยอักขระแต่ละตัวนั้นถูกกำหนดโดยจำนวนช่องว่างด้านหน้า นั่นทำให้มันยุ่งยากแม้กระทั่งกับความท้าทายของการส่งออกคงที่เนื่องจากคำสั่งที่แตกต่างกันสามารถอธิบายจำนวนไบต์ที่ต่างกันได้อย่างมากมาย โดยเฉพาะอย่างยิ่งตัวอักษรตัวเลขมีการแสดงเอกที่ทำให้มันจำเป็นในการสร้างตัวเลขที่มีขนาดใหญ่ขึ้นโดยการดำเนินการในจำนวนที่น้อยกว่า ดังนั้นความท้าทายนี้เกี่ยวกับการเขียนโปรแกรมที่สามารถเล่นกอล์ฟโปรแกรม Starry เช่นนั้นได้ Starry ทำงานอย่างไร (รายละเอียดเล็ก ๆ น้อย ๆ ไม่ได้ระบุไว้ใน esolangs ดังนั้นฉันจะไปกับพฤติกรรมของล่าม Ruby ) Starry เป็นภาษาที่ใช้กองซ้อนโดยมีค่าจำนวนเต็มเดียวที่มีความแม่นยำตามอำเภอใจ (ซึ่งจะว่างเปล่าในตอนแรก) อักขระที่มีความหมายเพียงอย่างเดียวคือ: +*.,`' และช่องว่าง อักขระอื่น ๆ ทั้งหมดจะถูกละเว้น แต่ละลำดับของช่องว่างตามด้วยหนึ่งในอักขระที่ไม่ใช่ช่องว่างหมายถึงคำสั่งเดียว ประเภทของการเรียนการสอนขึ้นอยู่กับตัวละครที่ไม่ใช่ช่องว่างและจำนวนช่องว่าง คำแนะนำคือ: Spaces Symbol Meaning 0 + Invalid opcode. 1 + Duplicate top of stack. 2 + Swap top 2 stack elements. 3 …
25 metagolf  stack  starry 

20
การขยายตัวของแบคทีเรีย
โคโลนีของแบคทีเรียที่ติดฉลาก1ผ่านการ9ถ่ายทอดสดบนส่วนของเซลล์ที่เว้นระยะเท่ากันโดยมีเซลล์ว่างที่ระบุโดย0 0 0 2 0 0 0 1 2 0 0 3 3 0 0 ทุก ๆ วินาทีแต่ละอาณานิคมจะแพร่กระจายไปยังเซลล์ว่างเปล่าที่อยู่ติดกัน หากสองอาณานิคมไปถึงเซลล์ที่ว่างเปล่าในเวลาเดียวกัน t=0: 0 0 2 0 0 0 1 2 0 0 3 3 0 0 t=1: 0 2 2 2 0 1 1 2 2 3 3 3 3 0 t=2: …

2
ภาษาใดที่สั้นที่สุด
สร้างโปรแกรมที่ค้นหาความท้าทายล่าสุด 50 รายการด้วยรหัสกอล์ฟแท็กที่มีคำตอบอย่างน้อย 20 คำ จากนั้นแยกคะแนนสำหรับแต่ละภาษาในแต่ละความท้าทาย หากมีคำตอบมากกว่าหนึ่งคำตอบที่ใช้ภาษาเดียวกันให้นับคะแนนทั้งหมด หลังจากนั้นให้ใช้ภาษาที่พบมากที่สุด 20 อันดับแรกและส่งออกรายการที่มีชื่อภาษาจำนวนคำตอบจำนวนไบต์เฉลี่ยและจำนวนไบต์เฉลี่ย รายการควรเรียงตามจำนวนคำตอบเรียงจากมากไปน้อย คุณต้องคำนึงถึงความผันแปรในการใช้อักษรตัวพิมพ์ใหญ่ (เช่น: Matlab = MATLAB) ในภาษาที่มีหมายเลขรุ่นต่าง ๆ มากมาย (เช่น Python) ให้นับเป็นภาษาที่ไม่ซ้ำดังนั้น: Python != Python 2 != Python 2.7 != Python 3.x ตัวอย่างเอาต์พุต (รูปแบบเอาต์พุตเป็นทางเลือก): cJam, 66, 12.4, 8.5 Pyth, 58, 15.2, 19 Ruby, 44, 19.2, 22.5 Python, 34, 29.3, 32 …

17
การนับ +1 จำนวนเฉพาะ
กำหนดว่า natural number pคือ+1 ไพร์มของ natural number nถ้าpเป็นจำนวนเฉพาะและการแทนฐานแบบไบนารี่มาตรฐาน (เช่นไม่มีเลขศูนย์นำหน้า) ของpสามารถรับได้โดยการเพิ่ม (เช่นการเติมต่อท้ายหรือแทรก) เดียว1ไปแทน binary มาตรฐานn ยกตัวอย่างเช่นฐานเป็นตัวแทนของ17คือ10001 2 หมายเลขธรรมชาติแตกต่างกันที่สามารถเกิดขึ้นโดยการเพิ่ม1ที่จะ10001 2มี110,001 2หรือ49 , 101001 2หรือ41 , 100101 2หรือ37และ100,011 2หรือ35 กลุ่มคนเหล่านี้41และ37เป็นหมายเลขเฉพาะดังนั้น17จึงมี+1 จำนวนสองครั้ง งาน เขียนโปรแกรมหรือฟังก์ชั่นที่รับจำนวนเต็มบวกnอย่างเคร่งครัดเป็นอินพุตแล้วพิมพ์หรือส่งกลับจำนวน+1 ที่ซ้ำกันของn อินพุตและเอาต์พุตต้องเป็นเลขจำนวนเต็มหรือการแทนค่าสตริงหรือทศนิยม ใช้กฎมาตรฐานของกอล์ฟ กรณีทดสอบ Input: 4 Output: 0 Input: 1 Output: 1 Input: 17 Output: 2 Input: 33 Output: 3 …

14
รหัสบอท 4: การเขียนโปรแกรมใช้งานได้
Sheesh นี่คือสิ่งที่ 4 จริงเหรอ? สำหรับผู้ใช้งานเก่าทุกคนความท้าทายหลักเหมือนกัน แต่เรากำลังใช้ Java แทนภาษาที่กำหนดเอง นี่คือความท้าทายสาม CodeBot ที่ ผ่านมาในกรณีที่คุณมีความสนใจ เป้าหมายของ CodeBots คือการทำให้บอทของคุณเป็นไวรัสที่เป็นไปได้ แต่ละบอถือธงและคุณต้องให้แน่ใจว่าสถานะของคุณได้ทุกที่ API บอตจะเป็นไปตาม "โปรโตคอล" ที่เป็นมาตรฐานและบอตจะดำเนินการผ่านขั้นตอนต่อไปนี้พร้อมกัน: IPAddress selectMessageRecipient() อนุญาตให้บอทเลือกคนที่เขาต้องการส่งข้อความ "เป็นมิตร" ถึง Message sendMessage() อนุญาตให้บอทเลือกเนื้อหาของข้อความที่เขาจะส่งออกไป processMessage(IPAddress, Message) ถูกเรียกสำหรับแต่ละข้อความที่บอทได้รับ FunctionType selectFunctionToBlock()บล็อกฟังก์ชั่นจากการเขียนทับสำหรับเทิร์นปัจจุบัน ดูขั้นตอนที่ 7 IPAddress selectAttackTarget()อนุญาตให้บอทเลือกคนที่เขาต้องการ DDOS การโจมตี DDOS นั้นสำเร็จถ้าบอตถูกโจมตี 3 บอตในเวลาเดียวกัน หากการโจมตีสำเร็จผู้โจมตีแต่ละคนสามารถทำขั้นตอนที่ 6 และ 7 ได้ readData(ReadonlyBot) อนุญาตให้บอทอ่านข้อมูลที่เก็บไว้ในบอทที่มีช่องโหว่ …

6
ตัวเลขใหญ่มาก
ในขณะที่พยายามเล่นกอล์ฟคำตอบของฉันหลายคำฉันจำเป็นต้องเขียนจำนวนเต็มจำนวนมากในตัวละครให้น้อยที่สุด ตอนนี้ฉันรู้วิธีที่ดีที่สุดแล้ว: ฉันจะทำให้คุณเขียนโปรแกรมนี้ ความท้าทาย เขียนโปรแกรมที่เมื่อได้รับจำนวนเต็มบวกเอาท์พุทโปรแกรมที่พิมพ์ไปยัง stdout หรือเทียบเท่า โปรแกรมเอาต์พุตไม่จำเป็นต้องเป็นภาษาเดียวกันกับผู้สร้าง ผลลัพธ์จะต้องมีขนาดไม่เกิน 128 ไบต์ คุณสามารถรับอินพุตจาก stdin หรือเทียบเท่า (ไม่ใช่ฟังก์ชั่นอินพุต) คุณสามารถส่งออกผลลัพธ์ของโปรแกรมเป็น stdout หรือเทียบเท่า จำนวนเอาต์พุตต้องเป็นทศนิยม (ฐาน 10) เกณฑ์การให้คะแนน คะแนนของคุณเท่ากับจำนวนเต็มบวกที่น้อยที่สุดที่โปรแกรมของคุณไม่สามารถเข้ารหัสได้ รายการที่มีคะแนนมากที่สุดชนะ

30
วาดรุ้ง
ความท้าทายนั้นง่าย: วาดสายรุ้งในจำนวนน้อยที่สุดเท่าที่จะทำได้ รายละเอียดสำหรับรุ้งมีดังนี้: รูปจะต้องมีความกว้าง 400 พิกเซลและสูง 200 พิกเซล (เป็นตัวเลือก 401x201 หากคุณต้องการจุดศูนย์กลางพิกเซลเดียว) วงแหวนสีแดงควรแตะทุกเส้นขอบของภาพ (รัศมีด้านนอก = 200 พิกเซล) วงแหวนทั้งหมดจะต้องมีความกว้างเท่ากัน (10 พิกเซล) วงแหวนสีม่วงจะมีรัศมีภายในเท่ากับ 130 พิกเซล โบว์ควรเป็นครึ่งบนของวงกลมที่สมบูรณ์แบบ พื้นหลังจะเป็นสีขาว (ยอมรับแบบโปร่งใส) รูปจะต้องไม่มีเส้นขอบ (ยกเว้นในกรณีที่ไม่สามารถระงับเส้นขอบได้) ไม่อนุญาตให้ใช้ฟังก์ชันการสร้างรุ้งในตัว! สีต่อไปนี้จะใช้ในรุ้งกินน้ำ: นี่คือรหัสกอล์ฟดังนั้นโค้ดที่สั้นที่สุดเป็นไบต์จะชนะ! ตัวอย่าง: ที่เกี่ยวข้อง แต่แตกต่างกัน!

3
“ เขียน” เครื่องคิดเลขอย่างง่ายโดยไม่ต้องเขียนโค้ดบรรทัดเดียว
มันง่ายมาก: สร้างโปรแกรมโดยไม่ต้องเขียนโค้ดบรรทัดเดียว รหัสอาจประกอบด้วยคำถามและคำตอบของ Stack Overflow ที่มีอยู่เท่านั้น โปรแกรมควรสร้างตัวเลขสุ่มสองตัวและเอาท์พุทตัวเลข เพิ่มไปยัง หักออกจาก คูณด้วยและ หารด้วย ซึ่งกันและกัน กฎระเบียบ คุณต้องรวมลิงค์ไปยังคำถาม / คำตอบที่คุณใช้ในคำตอบ คุณไม่สามารถแก้ไขรหัสที่คุณพบโดยมีข้อยกเว้นดังต่อไปนี้: คุณสามารถเปลี่ยนชื่อตัวแปรฟังก์ชั่นและวิธีการได้ (นี่ไม่ได้หมายความว่าคุณสามารถเปลี่ยนการเรียกใช้เมธอดได้โดยเปลี่ยนให้สแกนเนอร์เนอร์เน็ทอิน () เป็นสแกนเนอร์เน็กซ์ไลน์ () และอ้างว่าคุณกำลังเปลี่ยนชื่อเมธอดการเปลี่ยนแปลงจะต้องอยู่ในคำจำกัดความ นิติบุคคลเดียวกัน.) วิธีการแก้ปัญหาควรจะยังคงทำงานถ้าตัวแปรฟังก์ชั่นหรือวิธีการจะถูกเปลี่ยนชื่ออีกครั้ง คุณสามารถปรับการเยื้องอย่างเหมาะสม คุณสามารถสันนิษฐานได้ว่าโหลดโมดูลที่เหมาะสมเพื่อให้โค้ดขนาดเล็กทำงานได้ (เช่นการนำเข้าคำสั่งสำหรับ Java และ Python โดยใช้คำสั่งสำหรับ C # และ C ++ และรายการเทียบเท่าในทุกภาษา) หากข้อมูลโค้ดรวมถึงการนำเข้าให้คุณคุณสามารถย้ายรายการเหล่านั้นไปยังด้านบนของรหัสได้ หากภาษานั้นต้องการให้โค้ดอยู่ในเนื้อความของเมธอดบางประเภทในการดำเนินการ (เช่นpublic static void main(String[] args)สำหรับ Java, static int Main(string[] args)สำหรับ …

7
ติดตามรายการไปยังตารางเวลา
บทนำ คุณไม่ได้เกลียดเมื่อมีคนอัปโหลดอัลบั้มที่คุณชอบไปยัง YouTube แต่คำอธิบายนั้นมีเพียงรายชื่อเพลงเท่านั้น อย่างนี้: 1. Everything in Its Right Place - 4:11 2. Kid A - 4:44 3. The National Anthem - 5:50 4. How to Disappear Completely - 5:55 5. Treefingers - 3:42 6. Optimistic - 5:16 7. In Limbo - 3:31 8. Idioteque - 5:09 9. Morning …
25 code-golf  string  date 

12
อิโมติคอนจดจำใบหน้า
เขียนโปรแกรมที่รับเป็นอิโมติคอนและ ouputs ถ้าอิโมติคอนมีความสุขหรือเศร้า โปรแกรมยอมรับสตริงเป็นอินพุตหรือพารามิเตอร์และควรแสดงสตริง "Happy" หากอินพุตอยู่ในรายการไอคอนสื่อความสุขหรือ "เศร้า" หากอินพุตอยู่ในรายการไอคอนแสดงอารมณ์เศร้า คุณสามารถสมมติว่าอินพุตเป็นอิโมติคอนที่ถูกต้อง (มีความสุขหรือเศร้า) เสมอโดยไม่มีที่ว่างหรือแท็บรอบ ๆ ต่อไปนี้เป็นรายชื่ออีโมติคอนที่มีความสุขที่คั่นด้วยช่องว่าง: :-) :) :D :o) :] :3 :c) :> =] 8) =) :} :^) :-D 8-D 8D x-D xD X-D XD =-D =D =-3 =3 B^D (-: (: (o: [: <: [= (8 (= {: (^: นี่คือรายการที่คั่นด้วยช่องว่างของอีโมติคอนเศร้า: >:[ …
25 code-golf  string 

20
เอาต์พุตเสียงของความถี่ที่แน่นอน
นี่เป็นความท้าทายที่ค่อนข้างง่าย แต่ฉันไม่พบคำถามใด ๆ ที่คล้ายกับมันจริงๆ ความท้าทายคือการใช้ความถี่ในการใช้ STDIN หรือเทียบเท่าแล้วส่งเสียงที่ตรงกับความถี่นั้นใน Hz เป็นเวลา 5 วินาที ตัวอย่างเช่น Input: 400 Output: (a tone of 400 Hz with a duration of 5 seconds) กฎระเบียบ ต้องป้อนข้อมูลผ่าน STDIN หรือภาษาที่เทียบเท่าของคุณ คำตอบต้องเป็นโปรแกรมเต็มรูปแบบ อาจใช้ Builtins ความถี่จะอยู่ที่ใดก็ได้ตั้งแต่ 50 - 5,000 Hz เอาต์พุตจะต้องเล่นเป็นเวลา 5 วินาที ผลผลิตจะต้องอยู่ในรูปของคลื่นไซน์ กรณีทดสอบ การป้อนข้อมูล: 440 เอาท์พุท: การป้อนข้อมูล: 200 เอาท์พุท: การป้อนข้อมูล: …
25 code-golf  audio 

19
FTW ไม่มีที่สิ้นสุด
คำฟิโบน่าชีไม่มีที่สิ้นสุดเป็นลำดับที่ไม่สิ้นสุดของเลขฐานสองซึ่งคำนวณโดยการต่อคำซ้ำของคำไบนารี จำกัด ให้เรากำหนดว่าลำดับคำ Fibonacci ประเภท (หรือลำดับ FTW ) เป็นลำดับใด ๆ ⟨W n ⟩ที่เกิดขึ้นดังต่อไปนี้ เริ่มต้นด้วยสองอาร์เรย์ของเลขฐานสองโดยอำเภอใจ ขอให้เราโทรอาร์เรย์เหล่านี้W -1และW 0 สำหรับแต่ละn> 0ให้W n ≔ W n-1 ∥ W n-2โดยที่∥หมายถึงการต่อกัน เป็นผลมาจากความหมายก็คือว่า recursive W nอยู่เสมอเป็นคำนำหน้าของW 1 + nและดังนั้นทุกW kดังกล่าวว่าk> n ในความหมายนี่หมายถึงลำดับ⟨W n ⟩แปรเปลี่ยนเป็นคำที่ไม่สิ้นสุด เป็นทางการให้W ∞เป็นอาเรย์ที่ไม่มีที่สิ้นสุดเท่านั้นซึ่งW nเป็นคำนำหน้าของW ∞สำหรับn n 0ทั้งหมด เราจะเรียกคำอนันต์ใด ๆ ที่เกิดขึ้นจากกระบวนการข้างต้นอนันต์ FTW งาน เขียนโปรแกรมหรือฟังก์ชั่นที่ยอมรับคำฐานสองคำW …

30
ฉันชื่อทางการ
บทนำ ดังที่ ToonAlfrink กล่าวว่า : "ฉันคิดว่ามีคำถามง่าย ๆ ไม่เพียงพอที่ผู้เริ่มต้นสามารถลองได้!" ดังนั้นงานง่ายมาก รับค่าสตริงส่งออกค่าจริงหรือเท็จไม่ว่าชื่อจะเป็นทางการหรือไม่ก็ตาม ชื่อคือ "เป็นทางการ" หากเป็นคำตัวพิมพ์ชื่อเดียวนั่นคือ: ถ้าครั้งแรกตัวอักษรเป็นตัวพิมพ์ใหญ่ (ไม่เป็นทางการ: adnan) ถ้าตัวอักษรอื่น ๆ จะไม่ได้ทุน (ไม่เป็นทางการ: AdNaN) หากชื่อไม่มีอักขระที่ไม่ใช่ตัวอักษร (ไม่ใช่เป็นทางการ: Adnan123, Adnan!) หากชื่อนั้นมีเพียงหนึ่งคำ (ไม่ใช่เป็นทางการ: Adn an, Adn An) ถ้าชื่อที่มีมากกว่าหนึ่งตัวอักษร (ไม่เป็นทางการ: A) กฎระเบียบ คุณอาจมีฟังก์ชั่นหรือโปรแกรม นี่คือโค้ดกอล์ฟดังนั้นการส่งที่มีจำนวนไบต์น้อยที่สุดจะชนะ! หมายเหตุ:เพื่อลดความซับซ้อนของสิ่งต่าง ๆ ชื่อเช่น Mary-Ann อยู่ในการท้าทายนี้ไม่ใช่เป็นทางการ สมมติว่าไม่มีช่องว่างนำหน้าในชื่อ สมมติว่าใช้อักขระ ASCII ที่พิมพ์ได้ ( 32-126) เท่านั้นในชื่อ กรณีทดสอบ …
25 code-golf  string 

8
CSS Color Golf!
คุณเป็นนักพัฒนาเว็บและหัวหน้าของคุณได้ตัดสินใจที่จะอัพเดทเว็บไซต์ของ บริษัท เขาตัดสินใจว่าสีที่น้อยลงจะดีกว่า แต่เขาต้องการให้เว็บไซต์มีสีเหมือนกัน คุณตัดสินใจอย่างยุติธรรมว่าเขาไม่รู้ว่าเขากำลังพูดถึงเรื่องอะไร แต่คุณจะลองต่อไปเพราะคุณเบื่อ เนื่องจาก บริษัท มีหน้าเว็บหลายพันหน้าและแต่ละอันมี CSS ของตัวเองคุณจึงตัดสินใจเขียนสคริปต์เพื่อทำการเปลี่ยนแปลงที่จำเป็น ไม่จำเป็นต้องแยกวิเคราะห์ HTML หน้าทั้งหมดในปัจจุบันใช้สตริงที่ต้องการrgb(255,0,0)สี ป.ร. ให้ไว้สามค่าทศนิยมที่เป็นตัวแทนของค่า RGB ของแอตทริบิวต์สี CSS (ตามลำดับ) ผลตอบแทนหรือพิมพ์แทนสายที่สั้นที่สุดของสีที่เช่นว่ามันเป็นใช้งานได้สำหรับ CSS color:<your-result-here>;ชอบโดย: นี่คือตารางคำสำคัญสี CSS ที่ถูกต้องทั้งหมด ตัวพิมพ์เล็กและตัวพิมพ์เล็ก ตัวอย่าง: โปรดทราบว่าสีสามารถกำหนดได้ด้วย 12 หรือ 24 บิต รูปแบบที่เป็นรุ่นสั้น#ABC เชย Norris เป็นสี#AABBCC โปรแกรมของคุณจะใช้จำนวนเต็ม 3 จำนวนเท่านั้นไม่ใช่สตริง (ยกเว้น"โบนัส" ที่กล่าวถึงในภายหลัง) 0, 0, 0 -> #000 (same as #000000, …
25 code-golf  css 

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