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

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

29
ทำให้ภาพ 448 * 448 โปร่งใส
นี่เป็นความท้าทายที่เรียบง่าย ภารกิจคือการเขียนโค้ดที่ให้ภาพสี่เหลี่ยมจัตุรัสขนาด 448 * 448 ที่โปร่งใส 100% เอาท์พุทควรปฏิบัติตามกฎระเบียบของภาพมาตรฐาน

12
ควินเอาท์พุทตัวเองในไบนารี
งานของคุณถ้าคุณต้องการที่จะยอมรับมันคือการเขียนโปรแกรมที่ส่งออกซอร์สโค้ดของตัวเองในการเป็นตัวแทนUTF-8แบบไบนารี กฎระเบียบ แหล่งที่มาจะต้องมีความยาวอย่างน้อย 1 ไบต์ โปรแกรมของคุณจะต้องไม่รับอินพุต (หรือมีอินพุตที่ไม่ได้ใช้และว่างเปล่า) ผลลัพธ์อาจอยู่ในรูปแบบ Convient ใด ๆ ขึ้นบรรทัดใหม่ตัวเลือกที่ได้รับอนุญาต ขอให้สังเกตว่าหนึ่งไบต์คือ 8 บิตและความยาวของการแทนค่า UTF-8 แบบไบนารีนั้นจำเป็นต้องมีหลายเท่าของ 8 นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการตีกอล์ฟตามปกติและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม ตัวอย่าง สมมติว่ารหัสต้นฉบับของคุณเป็นAä$$€hที่สอดคล้อง UTF-8 แทน binary 010000011100001110100100001001000010010011100010100000101010110001101000ของมันคือ ถ้าผมทำงานที่ส่งออกจะต้องเป็นAä$$€h010000011100001110100100001001000010010011100010100000101010110001101000 A --> 01000001 ä --> 1100001110100100 $ --> 00100100 $ --> 00100100 € --> 111000101000001010101100 h --> 01101000 Aä$$€h …

24
บิชอป
มาจากสิ่งนี้ลบโพสต์แล้ว ให้สตริงคำตอบ (ความจริง / เท็จหรือค่าที่สอดคล้องกันสองค่า) ถ้ามันถือว่าเป็นรหัสผ่านบิชอปที่ดีซึ่งเป็นเมื่อตรงตามเงื่อนไขต่อไปนี้ทั้งหมด: มันมีอย่างน้อย 10 ตัวอักษร มันมีอย่างน้อย 3 หลัก ( [0-9]) มันไม่ใช่ palindrome (เหมือนกับตัวมันเองเมื่อกลับด้าน) คุณจะได้รับโบนัส 0 ไบต์หากรหัสของคุณเป็นรหัสผ่านบิชอปที่ดี คำเตือน: Do ไม่ใช้ความดีบิชอปเป็นตัวชี้วัดความแข็งแรงของรหัสผ่านที่เกิดขึ้นจริง! ตัวอย่าง รหัสผ่านบิชอปที่ดี PPCG123GCPP PPCG123PPCG PPCG123gcpp 0123456789 Tr0ub4dor&3 รหัสผ่านบิชอปไม่ดี PPCG123 (สั้นเกินไป) correct horse battery staple (ตัวเลขไม่เพียงพอ) PPCG121GCPP (palindrome) (สั้นเกินไปและไม่เพียงพอตัวเลข) abc121cba (สั้นเกินไปและ palindrome) aaaaaaaaaaaa (palindrome และตัวเลขไม่เพียงพอ) abc99cba (ทุกอย่างผิดปกติ)

20
บัญชีคู่ขนาน (วันที่ 2)
ความท้าทายได้รับอนุญาตจากการประกวดรหัสมหาวิทยาลัยของฉัน หลังจากจบการศึกษาเมื่อสองสามเดือนที่ผ่านมามารีเปิดบัญชีธนาคารเพื่อเริ่มรับงานแรกในเมือง ตั้งแต่นั้นมาเธอได้ทำธุรกรรมเล็กน้อยกับมัน การชำระครั้งแรกของเธอคือ 1,000 ดอลลาร์ ด้วยเงินจำนวนนั้นเธอจ่ายค่าอาหารเย็นที่เธอเชิญพ่อแม่ของเธอ (อาหารเย็นราคา 150 ดอลลาร์ดอลลาร์) จากนั้นเธอซื้อในซุปเปอร์มาร์เก็ตที่มีชื่อเสียง ($ 80 ดอลลาร์) และจองโรงแรมสำหรับวันหยุดพักผ่อนของเธอ ($ 200) ในตอนท้ายของเดือนที่เธอได้รับการชำระเงินของเธออีกครั้ง (1,040 ดอลลาร์มากกว่าเดือนก่อนหน้าเล็กน้อย) และหนึ่งวันหลังจากที่เธอใช้จ่ายอีก 70 ดอลลาร์ที่ซูเปอร์มาร์เก็ต วันนี้เธอรู้ว่าถ้าหลังจากจ่าย $ 80 ดอลลาร์แรกในซุปเปอร์มาร์เก็ตบัญชีที่สองได้ถูกสร้างขึ้นและบัญชีแรกถูกแช่แข็งทั้งสองบัญชีจะมียอดเงินคงเหลือเท่ากันทั้งหมด: 1000−150−80Total=770−2001040−70Total=7701000-150-80⏟Tโอเสื้อaล.=770-2001040-70⏟Tโอเสื้อaล.=770 \underbrace{1000\quad -150\quad -80}_{Total=770}\quad \underbrace{-200\quad 1040\quad -70}_{Total=770} เหตุการณ์นี้เกิดขึ้นน้อยมากกับเธอที่เธอต้องการตรวจสอบอย่างต่อเนื่องหากการเคลื่อนไหวของบัญชีของเธอและเพื่อน ๆ ของเธอมีคุณลักษณะนี้ด้วยหรือไม่ ท้าทาย รับรายการธุรกรรมส่งออกจำนวนเวลาที่เจ้าของบัญชีธนาคารสามารถสร้างบัญชีที่สองเพื่อให้ทั้งสองมียอดดุลสุดท้ายที่เหมือนกัน ตัวอย่าง: [1000, -150, -80, -200, 1040, -70] 1)Total=01000−150−80−2001040−70Total=15401)⏟Total=01000−150−80−2001040−70⏟Total=1540 \color{red}{1)\quad\underbrace{}_{Total=0}\quad \underbrace{1000\quad -150\quad …
10 code-golf 

15
กฎการลงทุนการตลาดแบบ“ ขา” หลายระดับ
ความท้าทายที่เกี่ยวข้องกับการตลาดหลายระดับ เพื่อนต้องการได้รับรางวัล ดังนั้นมันจึงดึงดูดNนักลงทุน ( N>=1) นักลงทุนรายที่ฉันลงทุนx[i]แต่ละราย เมื่อยอดรวมเกินขีด จำกัดx[0]+x[1]+...+x[N-1] >= Tเพื่อนสามารถได้รับรางวัล แต่ถ้าเงื่อนไขต่อไปนี้เป็นจริง: จำนวนนักลงทุนขั้นต่ำควรมากกว่าM( M<=N) เป็นเวลาอย่างน้อยหนึ่งจำนวนเต็มkที่k>=Mและk<=Nใด ๆ ที่kนักลงทุนต้องลงทุนอย่างน้อยT/kแต่ละคน ให้ไว้N, x[], T, Mคุณควรตรวจสอบว่ารางวัลของเพื่อนถูกสร้างขึ้นหรือไม่ (ผลบูลีน "ใช่" หรือ "ไม่") รหัสที่สั้นที่สุดชนะ ตัวอย่าง: N=5; M=3; T=10000ในการที่จะสร้างรางวัลของเพื่อนต้องทำอย่างใดอย่างหนึ่งต่อไปนี้ ๆ 3 ลงทุนอย่างน้อย 3334 ต่อ ๆ 4 ลงทุนอย่างน้อย 2,500 ทั้ง 5 ลงทุนอย่างน้อย 2,000 ต่อ N=6; M=2; T=5000: 2 ใด ๆ ที่ลงทุนอย่างน้อย …

15
เมทริกซ์ตัวต่อชิ้นจิ๊กซอว์
(แรงบันดาลใจแบบสุ่มโดยhttps://codegolf.meta.stackexchange.com/a/17272/42963 ) ให้เมทริกซ์รูปสี่เหลี่ยมผืนผ้าของตัวเลข (เช่น, 0 - 9), เอาท์พุท "ชิ้น" ของเมทริกซ์ราวกับว่าตัวเลขนั้นเชื่อมต่อกันไว้เป็นชิ้นเดียวตามลำดับจากน้อยไปมาก ชิ้นส่วนรับประกันว่าจะเชื่อมต่อแบบ orthongonally เท่านั้น - ไม่มีชิ้นใดที่จะเชื่อมต่อในแนวทแยงมุม จะมีได้สูงสุด 10 ชิ้นเท่านั้น (กล่าวคือ3ชิ้นส่วนจะไม่ปรากฏสองครั้งในเมทริกซ์เดียวกัน) ตัวอย่างเช่นกำหนดเมทริกซ์ 0 1 1 1 0 0 1 2 3 3 2 2 ต่อไปนี้คือชิ้นส่วนและเอาต์พุตตัวอย่าง: 0 0 0 1 1 1 1 2 2 2 3 3 การเว้นวรรคเป็นสิ่งสำคัญในการรักษารูปร่างของชิ้นส่วน แต่ชิ้นส่วนนั้นไม่จำเป็นต้องมีระยะห่างภายใน ชิ้นส่วนเองควรมีความแตกต่างในลักษณะที่สอดคล้องกัน (เช่นการขึ้นบรรทัดใหม่ระหว่างชิ้นส่วนเพื่อให้แน่ใจว่าแต่ละตัวมีลักษณะแตกต่างกัน ฯลฯ …
10 code-golf  matrix 

11
แผนที่ขี้โกง!
หลังจากส่งการมอบหมายทั้งหมดพจนานุกรมจะถูกสร้างขึ้นเพื่อจับคู่หมายเลขนักเรียนกับแฮชของไฟล์ พจนานุกรมหรือ hashmap นี้หรือการจับคู่ (สิ่งที่ภาษาของคุณเรียกว่า) จะมีลักษณะดังนี้: {100: "aabb", 104: "43a", 52: "00ab", 430: "aabb", 332: "43a"} กุญแจสำคัญคือหมายเลขนักเรียนและค่าคือแฮช หน้าที่ของเราคือเลือกคนขี้โกง! คนขี้โกงคือคนที่มีแฮชเหมือนกัน ได้รับการป้อนข้อมูลที่{100: "aabb", 104: "43a", 52: "00ab", 430: "aabb", 332: "43a"}ฟังก์ชั่นควรกลับ (หรือพิมพ์) ข้อความต่อไปนี้: 100 has identical files to 430 104 has identical files to 332 สังเกตว่าไฟล์ที่แฮชนั้นไม่เหมือนใคร นอกจากนี้คำสั่งซื้อก็มีความสำคัญเช่นกัน: {100: "aabb", 202: "aabb", 303: …

3
Arbitrary Randomness (ฉบับความเร็ว)
รับจำนวนเต็มnคำนวณชุดของnจำนวนเต็มเฉพาะในช่วงสุ่ม1..n^2(รวม) ซึ่งผลรวมของชุดเท่ากับn^2 สุ่มในกรณีนี้หมายถึงการสุ่มอย่างสม่ำเสมอระหว่างผลลัพธ์ที่ถูกต้อง เอาต์พุตที่ถูกต้องแต่ละรายการสำหรับชุดที่กำหนดnจะต้องมีโอกาสที่จะถูกสร้างขึ้นอย่างสม่ำเสมอ ยกตัวอย่างเช่นn=3ควรมีโอกาสที่ 1/3 แต่ละการแสดงผล6, 1, 2, หรือ3, 5, 1 4, 3, 2เนื่องจากเป็นชุดคำสั่งซื้อจึงไม่เกี่ยวข้อง4, 3, 2จึงเหมือนกัน3, 2, 4 เกณฑ์การให้คะแนน ผู้ชนะคือโปรแกรมที่สามารถคำนวณคะแนนสูงสุดnในเวลาไม่เกิน 60 วินาที หมายเหตุ:เพื่อป้องกันฮาร์ดโค้ดบางส่วนที่เป็นไปได้รายการทั้งหมดจะต้องต่ำกว่า 4000 ไบต์ การทดสอบ รหัสทั้งหมดจะทำงานบนเครื่อง Windows 10 ในพื้นที่ของฉัน (Razer Blade 15, 16GB RAM, Intel i7-8750H 6 คอร์, 4.1GHz, GTX 1060 ในกรณีที่คุณต้องการละเมิด GPU) ดังนั้นโปรดให้คำแนะนำโดยละเอียดเพื่อเรียกใช้รหัสของคุณ เครื่องของฉัน ตามคำขอรายการสามารถเรียกใช้อย่างใดอย่างหนึ่งผ่าน Debian บน …

30
จำนวนรอบการหมุน
งาน เขียนฟังก์ชั่นหรือโปรแกรมเพื่อค้นหาจำนวนรอบการหมุนที่ล้อต้องการเพื่อเดินทางไปตามระยะทางที่กำหนดโดยกำหนดรัศมี กฎระเบียบ อินพุตสามารถเป็นจำนวนตรรกยะจำนวนบวก 2 ตัวและสามารถนำไปใช้ในรูปแบบใดก็ได้ที่สะดวก อินพุตทั้งสองเป็นหน่วยเดียวกัน ต้องไม่มีตัวเลข 0-9 ในรหัสของคุณ เอาท์พุทจะเป็นจำนวนเต็ม (ในกรณีที่ลอย, รอบที่ไม่มีที่สิ้นสุด) นี่คือรหัส - กอล์ฟเพื่อให้ได้รหัสที่สั้นที่สุด ตัวอย่าง distance radius output 10 1 2 50 2 4 52.22 4 3 3.4 0.08 7 12.5663 0.9999 3

9
ผ่านอวกาศและเวลา
บทนำ: โดยทั่วไปเรามักจะพูดถึงสี่มิติ: สามมิติพื้นที่สำหรับx, yและz; และมิติหนึ่งครั้ง เพื่อประโยชน์ของความท้าทายนี้ แต่เราจะแยกมิติเวลาเป็นสามเช่นกัน: past, และpresentfuture การป้อนข้อมูล: สองรายการอินพุต หนึ่งที่มีx,y,zพิกัดจำนวนเต็มและหนึ่งปีที่มีจำนวนเต็ม เอาท์พุท: หนึ่งในสี่เอาต์พุตที่แตกต่างและคงที่ตามที่คุณต้องการ หนึ่งที่จะบ่งบอกถึงการส่งออกspace; หนึ่งเพื่อบ่งชี้เอาท์พุทtime; หนึ่งเพื่อบ่งชี้เอาท์พุทboth space and time; neither space nor timeและเป็นหนึ่งเพื่อบ่งชี้ถึงการส่งออก เราจะระบุว่าเราไปที่มิติพื้นที่ทั้งสามถ้าความแตกต่างของจำนวนเต็ม - ทูเปิลไม่ใช่ 0 สำหรับทั้งสามมิติ เราจะระบุว่าเราไปสู่มิติเวลาทั้งสามถ้ามีอย่างน้อยหนึ่งปีในอดีตอย่างน้อยหนึ่งปีในอนาคตและอย่างน้อยหนึ่งปีเท่ากับปีปัจจุบัน (ดังนั้นในปัจจุบัน) ตัวอย่าง: อินพุต: รายการพิกัด:รายการ[{5,7,2}, {5,3,8}, {-6,3,8}, {5,7,2}] ปี:[2039, 2019, 2018, 2039, 2222] เอาท์พุท: คงที่สำหรับspace ทำไม? พิกัด เนื่องจากมันไม่เหมือนกันทั้งหมดเราจึงผ่านมิติพื้นที่ พิกัด เนื่องจากมันไม่เหมือนกันทั้งหมดเราจึงผ่านมิติอวกาศ พิกัด …

1
Tatamibari แก้ปัญหา
พื้นหลัง Tatamibariเป็นปริศนาตรรกะที่ออกแบบโดย Nikoli ปริศนา Tatamibari +เล่นบนตารางสี่เหลี่ยมที่มีสามชนิดที่แตกต่างกันของสัญลักษณ์ในมัน-, |และ ตัวแก้ปัญหาต้องแบ่งพาร์ติชันของกริดออกเป็นพื้นที่สี่เหลี่ยมหรือสี่เหลี่ยมตามกฎต่อไปนี้ ทุกพาร์ติชันจะต้องมีสัญลักษณ์หนึ่งตัวอยู่ในนั้น +สัญลักษณ์จะต้องมีอยู่ในตาราง |สัญลักษณ์จะต้องอยู่ในรูปสี่เหลี่ยมผืนผ้าที่มีความสูงมากกว่าความกว้าง -สัญลักษณ์จะต้องอยู่ในรูปสี่เหลี่ยมผืนผ้าที่มีความกว้างมากกว่าความสูง สี่ชิ้นอาจไม่เคยแบ่งปันมุมเดียวกัน (นี่คือวิธีการวางกระเบื้องทาทามิญี่ปุ่นโดยปกติ) ต่อไปนี้เป็นตัวอย่างปริศนาที่มีวิธีแก้ไข: งาน แก้ปริศนา Tatamibari ที่ให้มา อินพุตและเอาต์พุต อินพุตเป็นตาราง 2D ที่แสดงถึงตัวต่อ Tatamibari puzzle เซลล์แต่ละคนมีหนึ่งในสี่ตัวอักษร: +, -, |, และตัวอักษรที่คุณเลือกที่จะเป็นตัวแทนเซลล์ที่ไม่ได้เบาะแส ในกรณีทดสอบ*จะใช้เครื่องหมายดอกจัน คุณสามารถเลือกรูปแบบผลลัพธ์ที่เหมาะสมซึ่งสามารถแสดงวิธีแก้ปัญหาที่ถูกต้องกับปริศนา Tatamibari ซึ่งรวมถึง แต่ไม่ จำกัด เฉพาะ: (หากมีข้อสงสัยให้ถามในความคิดเห็น) รายการของ 4-tuples โดยที่แต่ละ tuple จะมีดัชนีด้านบน, ดัชนีด้านซ้าย, ความกว้างและความสูงของสี่เหลี่ยมผืนผ้า (หรือการแสดงที่เทียบเท่ากัน) กริดตัวเลขที่มีรูปร่างเดียวกันกับอินพุตโดยที่แต่ละหมายเลขจะแทนสี่เหลี่ยมผืนผ้า รายการชุดพิกัดที่แต่ละชุดมีพิกัดทั้งหมดของเซลล์ในสี่เหลี่ยมผืนผ้า หากตัวต่อมีหลายทางคุณสามารถส่งออกจำนวนที่ถูกต้อง (หนึ่งหรือมากกว่า) …

15
ค้นหาตัวย่อแบบเรียกซ้ำ
บทนำ recursive ย่อเป็นตัวย่อที่มีหรือหมายถึงตัวเองตัวอย่างเช่น Fishอาจจะเป็น recursive ย่อสำหรับFish is shiny heroแจ้งให้ทราบว่ายังมีตัวย่อของตัวเอง อีกตัวอย่างหนึ่งคือ->Hi Hi iglooหรือแม้กระทั่งppcg paints->ppcg paints cool galaxies pouring acid into night time stars ดังนั้นโดยทั่วไปประโยคเป็นตัวย่อซ้ำถ้าตัวอักษรตัวแรกของแต่ละคำสะกดคำหรือคำแรก ท้าทาย สร้างโปรแกรมที่ใช้สตริงที่มี 1 คำหรือมากกว่าโดยคั่นด้วยอักขระเว้นวรรคและแสดงตัวย่อแบบเรียกซ้ำหรือสตริงว่างถ้ามันเป็นไปไม่ได้ มันเป็นไปไม่ได้ที่จะทำให้ recursive ย่อสำหรับสตริงเช่นตัวอย่างเช่นppcg elephantเพราะคุณจะเริ่มต้นด้วยการpจากppcgนั้นเพิ่มว่าการย่อแล้วการจากe elephantแต่ตอนนี้เรามีความขัดแย้งเนื่องจากตัวย่อสะกดคาถา "pe .. " ซึ่งขัดแย้งกับ "pp .. " hiที่ยังเป็นกรณีที่มีการยกตัวอย่างเช่น คุณจะรับช่วงต่อhจากhiนี้ แต่ตอนนี้ประโยคจบลงแล้วและไม่มีตัวอักษรที่จะสะกดอีกต่อไปhiและเราเหลือแค่คำhที่ไม่ตรงกันhi. (สตริงต้องการจำนวนคำมากกว่าหรือเท่ากับจำนวนตัวอักษรในตัวย่อ) อินพุตและเอาต์พุตไม่คำนึงถึงขนาดตัวพิมพ์ ข้อ จำกัด สิ่งใดก็ตามที่ป้อนเข้าไปในโปรแกรมของคุณจะเป็นคำภาษาอังกฤษที่ถูกต้อง แต่คุณต้องแน่ใจว่าได้ส่งออกคำภาษาอังกฤษที่ถูกต้องเช่นกัน (คุณสามารถใช้ฐานข้อมูลหรือเก็บคำสำหรับตัวอักษร 26 …
10 code-golf  string 

15
Transformers in Disguise (ด้ายตำรวจ)
เธรดของโจรอยู่ที่นี่ งานตำรวจคือการเขียนฟังก์ชั่นหรือโปรแกรมที่เมื่อได้รับการป้อนข้อมูลของตัวเองเอาท์พุทสตริงกำหนดที่แน่นอน หากโปรแกรมได้รับอินพุตที่แตกต่างกันก็ควรส่งกลับผลลัพธ์ที่แตกต่างกัน กฎ: ส่งประกอบด้วย ชื่อภาษา หากมีการใช้ธงใด ๆ พวกเขาควรจะเปิดเผย จำนวนไบต์ของโปรแกรม จำนวนไบต์ของเอาต์พุต เอาท์พุต หากมีความยาวเป็นพิเศษโปรดระบุ pastebin หรือสิ่งที่คล้ายกัน ถ้ามันมี unprintables โปรดระบุ hexdump การขึ้นบรรทัดใหม่และช่องว่างต่อท้ายควรรวมอยู่ในผลลัพธ์ ตำแหน่งที่อินพุตมาจาก (STDIN, บรรทัดคำสั่งฯลฯ ) หากเหมาะสมคุณอาจสันนิษฐานว่าไบต์ที่แทน EOF ไม่มีอยู่ในอินพุตนอกจากว่าคุณใช้ไบต์นั้นในโปรแกรมของคุณ หากโปรแกรมของคุณแตกให้เพิ่มลิงก์ไปยังคำตอบที่เกี่ยวข้องในเธรดของโจรในหัวข้อของคุณ โปรแกรมของคุณไม่ปลอดภัยจนกว่าจะผ่านไปหนึ่งสัปดาห์และคุณทำเครื่องหมายไว้ ฉันไม่ยอมรับเทคนิคต่าง ๆ เช่นการสุ่มเลือกด้วยฟังก์ชันอินพุตหรือการเข้ารหัสลับ ฉันไม่สามารถหยุดพวกเขา แต่ฉันจะไม่ยอมรับวิธีการแก้ปัญหาที่ใช้อย่างใดอย่างหนึ่งของเหล่านี้ นอกจากนี้โปรดทราบว่าเทคนิคเหล่านี้บางอย่างอาจมีการชนกันโดยที่สตริงที่แตกต่างกันจะสร้างเอาต์พุตเดียวกัน เป้าหมายของคุณคือให้ได้ผลลัพธ์ที่สั้นที่สุด ทางออกที่ปลอดภัยที่สั้นที่สุดที่โพสต์ภายในสามสัปดาห์นับจากวันที่โพสต์คำถามนี้ชนะ! งานของโจรคือการหาโปรแกรมที่มีขนาดเท่ากับหรือน้อยกว่าต้นฉบับซึ่งเป็นไปตามกฎข้างต้น หากโจรปล้นโปรแกรมของคุณด้วยโซลูชันที่แตกต่างจากที่ตั้งใจไว้คุณมีโอกาสที่จะ 'แกะ' โดยการพิสูจน์ว่าโซลูชันของโจรนั้นไม่ถูกต้อง คุณสามารถทำได้โดยค้นหาอินพุตไปยังโปรแกรมของ robber ที่จะสร้างเอาต์พุตเดียวกัน ส่งตัวอย่าง: brainfuck, 10 ไบต์, คะแนน: 10 …

25
มาเล่นเกมเทนนิส 2: เกมฝั่งตะวันออก
มีความท้าทายคือการเล่นเทนนิส Let 'sโดยแดเนียล เขาเสนอให้วางศาลในทิศทางเหนือ - ใต้ ข้อเสนอของฉันคือสร้างศาลเพื่อเล่นเทนนิสในทิศทางตะวันออก - ตะวันตกเช่นกัน คุณต้องพิมพ์สนามเทนนิส แต่ต้องทำในจำนวนไบต์ที่น้อยที่สุดเนื่องจากเหตุผลที่เป็นความลับ สนามเทนนิส ------x------ | | x | | | |--x--| | | | x | | ------x------ กฎดั้งเดิมคือ: ไม่มีช่องว่างเพิ่มเติม ไม่มีแท็บใดที่จะไม่ยุติธรรม ขึ้นบรรทัดใหม่หนึ่งตัวเลือกที่ได้รับอนุญาต นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ!

15
Rosencrantz และ Guildenstern เป็นรหัส
ในการเล่น absurdist Rosencrantz และ Guildenstern นั้นตายไปแล้วตัวละครหลักทั้งสองRosencrantzและGuildenstern (หรือพวกเขา?) มักจะผสมกันอยู่เสมอว่าใครคือใคร - หรือบางส่วนของร่างกายของตัวเอง - เพราะขาดการรับรู้ ตัวตนของแต่ละบุคคล มันจะไม่ไร้สาระหรือไม่ถ้าพวกเขาสับรอบชื่อของพวกเขา? งานของคุณมันจะเขียนฟังก์ชั่นซึ่งจะใช้เวลาในสตริงของที่แม้ความยาว (และโดยการออกแบบหลาย 4) ที่มากกว่า 7 ตัวอักษรแยกมันและสับ การแยกจะต้องเป็นดังนี้ : สตริงจะเป็นรูปแบบที่"abscd"มีการทำหน้าที่เป็นตัวคั่น ส่วนแรกและตัวคั่นabsจะเป็นครึ่งแรกของสตริงในขณะที่ครึ่งหลังจะเป็นcd ความยาวของaจะ(string length / 4) - 1 ความยาวของbจะ(string length / 4) ความยาวของsจะ1 ความยาวของcจะ(string length / 4) + 1 ความยาวของdจะ(string length / 4) - 1 นี่อาจทำให้สับสนได้ดังนั้นให้ฉันแสดงตัวอย่างให้คุณดู ("a" + …
10 code-golf 

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