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

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

7
ค้นหาชีส
อัปเดต:มี 6 เขาวงกต พวกมันรวมอยู่ในคอนโทรลเลอร์ มี tar.gz ของเขาวงกตและไฟล์. bmp ที่นี่ (ดรอปบ็อกซ์) นอกจากนี้ยังมียูทิลิตี้สำหรับสร้างเขาวงกตเพิ่มเติมที่ลิงก์นั้น (ไฟล์ maze_4.txt ไม่ถูกต้องในการเก็บถาวร) เมื่อมาถึงจุดนี้โปรดลงคะแนนของคุณเองและอัพเดทคะแนนของคุณ รายละเอียดเกี่ยวกับวิธีการดังกล่าวรวมอยู่ที่ด้านล่าง หากคุณมีคำถามหรือปัญหาโปรด ping ฉันในการแชท คุณเป็นหนู คุณอยู่ในเขาวงกต ค้นหาชีส แนวคิด คุณอยู่ในเขาวงกตที่มีอยู่ในตารางสี่เหลี่ยม แต่ละพื้นที่ของกริดมีหนึ่งในหลายสิ่ง: ! - กำแพงที่ไม่สามารถใช้ได้ - พื้นที่ว่างซึ่งสามารถผ่านได้ O - คุณหนู + - ชีสเป้าหมายของคุณ โปรดใช้ตัวอักษรเดียวกันเพื่อที่ฉันจะได้ไม่ต้องแก้ไขคอนโทรลเลอร์ ในแต่ละเทิร์นคุณจะได้รับไพ่ที่อยู่เหนือ, ใต้, ตะวันออกและตะวันตกของตำแหน่งปัจจุบันของคุณ จากนั้นคุณจะต้องออกทิศทางที่คุณต้องการเดินทาง คุณชนะเมื่อคุณไปถึงชีส น้อยกว่าขั้นตอนจะดีกว่า อินพุต คุณจะได้รับข้อมูลผ่าน stdin ในรูปแบบต่อไปนี้: neswโดยที่ตัวอักษรแต่ละตัวแทนแผ่นกระเบื้องที่จุดเข็มทิศนั้น ตัวอย่างเช่นหากสถานะปัจจุบันดูเหมือนว่า ! …

22
ค้นหาคำแรกที่เริ่มต้นด้วยตัวอักษรแต่ละตัว
ระบุสตริงค้นหาคำแรกที่เริ่มต้นด้วยตัวอักษรแต่ละตัว (ตัวพิมพ์เล็กและใหญ่) ตัวอย่าง ใช้Ferulas flourish in gorgeous gardens.เป็นอินพุต: "Ferulas flourish in gorgeous gardens." ^^^^^^^ ^^ ^^^^^^^^ | | | | | --> is the first word starting with `g` | --> is the first word starting with `i` --> is the first word starting with `f` จากนั้นเอาต์พุตสำหรับตัวอย่างนี้ควรเป็นคำที่จับคู่กันโดยเว้นวรรคหนึ่งช่อง: "Ferulas in gorgeous" …
25 code-golf  string 

23
ผีคนไหนหายไป?
ในการท้าทายนี้เมื่อรับรายการผีจาก Pac-Man คุณจะต้องแสดงผลว่าผีใดหายไป คุณต้องทำในไบต์น้อยที่สุดเท่าที่จะทำได้ อินพุต ข้อมูลจะประกอบด้วยสตริงหรือรายการซึ่งจะรวมผีจำนวนซึ่งอาจรวมถึง; Blinky ดำสนิท พิ้งกี้ ไคลด์ อย่างไรก็ตามอินพุตอาจรวมถึง Pac-Man (ที่มีเครื่องหมายวรรคตอน) ดังนั้นจำนวนสูงสุดของรายการในรายการจะเป็นห้าในลำดับใด ๆ สามารถสันนิษฐานได้ว่าไม่มีรายการที่ไม่ถูกต้องอยู่ในรายการ เอาท์พุต การส่งออกจะประกอบด้วยสตริงหรือรายการ ซึ่งจะรวมถึงผีทั้งหมดที่ไม่ได้อยู่ในอินพุตในลำดับใด ๆ อย่างไรก็ตามถ้า Pac-Man อยู่ในการป้อนข้อมูลผีทั้งหมดจะถือว่าหายไป (เพราะเขากินพวกเขา) กรณีทดสอบ input: Clyde output: Blinky, Inky, Pinky alternate output: Inky, Pinky, Blinky or one of the other 4 permutations input: Clyde, Blinky # or however you …
25 code-golf  string 

14
การขยายตัวของเมทริกซ์สไตล์ฟีโบนักชี
สำหรับแต่ละแถวแล้วคอลัมน์ของเมทริกซ์เราสามารถเพิ่มรายการพิเศษด้วยผลรวมของสองรายการสุดท้ายในแถวหรือคอลัมน์นั้น ตัวอย่างเช่นอินพุตเมทริกซ์ต่อไปนี้: [ 1 1 1 ] [ 2 3 4 ] เมทริกซ์ที่ได้จะเป็นดังนี้: [ 1 1 1 2 ] [ 2 3 4 7 ] [ 3 4 5 9 ] เมื่อกำหนดอินพุตของจำนวนเต็ม N และเมทริกซ์ [X, Y] ที่มีขนาดอย่างน้อย 2x2 ให้ดำเนินการส่วนขยาย N ข้างต้นและส่งผลลัพธ์ออกมา เมทริกซ์ที่ได้จะเป็นขนาด [X + N, Y + N] เสมอ ตัวอย่าง: …

30
สร้าง Favicon ของ Exchange Exchange
คุณรู้จักโลโก้ PPCG หรือไม่? มันจะเป็นแบบนี้เมื่อคุณทำ ascii art ของมัน +---+ |PCG| +---+ v ตอนนี้ใน Code Golf นี้คุณจะสร้างรหัสที่ทำให้โลโก้สำหรับเว็บไซต์อื่น ๆ คล้ายกับโลโก้ PPCG สิ่งที่คุณควรทำ สตริง "Shortened" จะเป็นสตริงที่มีตัวอักษรตัวพิมพ์ใหญ่และตัวเลขทั้งหมดในอินพุตสตริง (ซึ่งจะเป็นPPCGเมื่อเป็นสตริงอินพุตProgramming Puzzles & Code Golf) กล่อง" ( +---+ | | +---+ v ) ควรพอดีสตริงที่สั้นลงอย่างสมบูรณ์ (ไม่ใหญ่กว่าหรือเล็กกว่า) นอกจากนี้ยังมีvส่วนที่ควรจะตรง 1 ลงและ 1 +จากซ้ายไปขวาลง จากนั้นเอาท์พุทกล่องที่มีสตริงที่สั้นลง ตัวอย่าง Stack Overflow: +--+ |SO| +--+ v …

15
สร้างตาราง ASCII-to-hex สำหรับ Mark Watney
แรงบันดาลใจจากคำถาม SciFi.SE นี้ พื้นหลัง (พร้อมสปอยเลอร์รอง): ในภาพยนตร์เรื่องMartianตัวเอก Mark Watney ใช้ตาราง ASCII เพื่อค้นหาค่าเลขฐานสิบหกของอักขระ ASCII เพื่อให้เขาสามารถพยายามสื่อสารกลับสู่โลกได้ * ท้าทาย หากไม่มีอินพุตให้ส่งออกตาราง ASCII ต่อไปนี้แบบนี้: Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex 0 00 NUL 16 10 DLE 32 20 48 30 0 64 40 @ 80 50 …

30
สุขสันต์วันปี่
เพื่อเป็นการเฉลิมฉลองวัน Rounded Pi คุณต้องใช้ประโยชน์จากวันที่วันนี้เพื่อสร้างโปรแกรมที่ใช้เส้นผ่านศูนย์กลางของวงกลมและออกรอบโดยการคูณเส้นผ่านศูนย์กลางด้วย 3.1416 โดยที่ต้องได้รับ 3.1416 โดยใช้วันที่วันนี้ Input 3 Output 9.4248 etc. ไม่ใช้วันที่เป็นอินพุต คุณไม่จำเป็นต้องใช้ส่วนประกอบทั้งหมดของวันที่ แต่ตัวเลขของ pi ต้องมาจากการจัดรูปแบบวัตถุ Date หรือใช้วัตถุ Date เพื่อรับมัน คำตอบที่ดูดี ไม่แน่ใจว่าจะระบุอะไรอีก คำตอบทั้งหมดตอบสนองสิ่งที่ฉันคาดหวัง ข้อ จำกัด ของฉันคือคุณต้องใช้ส่วนประกอบของวันที่ที่จะเกิดขึ้นกับ Pi แน่นอนคุณสามารถใช้ส่วนประกอบคูณด้วย 0 จากนั้นเพิ่ม 3.1416 แต่มันน่าเบื่อและมีค่าเหลือเกิน! รหัสที่สั้นที่สุดชนะ!

20
ครึ่งนาฬิกาอยู่ตรงไหน?
ในห้องของฉันฉันมีนาฬิกาที่น่ากลัวนี้ (คลิกเพื่อดูขนาดเต็ม): สิ่งเหล่านี้ส่วนใหญ่ไม่ยากที่จะเข้าใจ แต่สำหรับ 4-นาฬิกามีเล่ห์เหลี่ยมโดยเฉพาะ: โดยปกติเศษส่วนเช่น 1/2 ไม่สมเหตุสมผลในคณิตศาสตร์เลขคณิตเนื่องจากมีเพียงจำนวนเต็มเท่านั้นที่เกี่ยวข้อง วิธีที่ถูกต้องนั้นเป็นที่เห็นนี้เป็นสิ่งที่ตรงกันข้ามของ 2, หรือจะนำมันอีกทางหนึ่งคือตัวเลขที่ที่ วางวิธีนี้คิดอยู่ครู่จะเผยให้เห็นว่าเพราะ อย่างไรก็ตามเพียงแค่ค้นหาการผกผันทวีคูณจะง่ายเกินไปที่จะท้าทาย งั้นลองชนความยากลำบากในการยกกำลังหรือพูดอีกอย่างคือหาลอการิทึมแบบแยกส่วนหรือลอการิทึมแบบแยกส่วนของ 2 ในกรณีนี้ 3 คือลอการิทึมแบบแยกส่วนของ 2 เทียบกับ 7 สำหรับ 7 ของคุณที่มีทฤษฎีจำนวน / พีชคณิตนามธรรม พื้นหลังซึ่งหมายความว่าการคำนวณคำสั่งคูณของ 2 โมดูโล n ความท้าทาย ได้รับในเชิงบวกคี่จำนวนเต็มnมากกว่า 1, เอาท์พุทจำนวนเต็มบวกที่เล็กที่สุดที่x ตัวอย่าง n x 3 2 5 4 7 3 9 6 11 10 13 12 15 …

3
¿ xu ti te gismytermorna? (มันเป็น gismu ที่ถูกต้อง?)
(ตามตัวอักษร: "นี่ติดตาม / ตระหนักถึงgismu -form หรือไม่?") หลักฐาน ภาษาLojbanเป็นภาษาที่สร้างขึ้นความหมายในส่วนที่คำทั้งหมดได้ถูกสร้างขึ้นแทนที่จะได้รับอนุญาตให้พัฒนาตามธรรมชาติ ฐานความหมายของ Lojban คือgismuหรือคำรากซึ่งถูกสังเคราะห์โดยการรวมรากจากภาษาธรรมชาติที่พูดกันอย่างแพร่หลายเช่นจีน, ภาษาฮินดีและภาษาอังกฤษ Gismuทั้งหมดมีความยาว 5 ตัวอักษรและปฏิบัติตามรูปแบบที่เข้มงวดบางอย่าง ข้อมูล สำหรับวัตถุประสงค์ของเราตัวอักษร Lojban คือ: abcdefgijklmnoprstuvxz hqwyนั่นคืออักษรโรมันโดยไม่ต้อง ตัวอักษรนี้สามารถแบ่งออกเป็นสี่ประเภท: สระ aeiou พยัญชนะเสียง Sonorant lmnr ptkfcsxพยัญชนะออกเสียง เมื่อเปล่งออกมาสิ่งเหล่านี้จะกลายเป็น ... เสียงพยัญชนะbdgvjz(ไม่สอดคล้องกับเสียงพยัญชนะx) ในการเป็น gismu ที่ถูกต้องสตริง 5-char-long จะต้อง: เป็นหนึ่งในรูปแบบของพยัญชนะสระCVCCVหรือCCVCVที่ C หมายถึงพยัญชนะและ V หมายถึงเสียงสระ ปฏิบัติตามกฎการจับคู่พยัญชนะ กฎการจับคู่พยัญชนะสำหรับคำ CCVCV: อักขระสองตัวแรกจะต้องประกอบด้วยหนึ่งใน 48 คู่ต่อไปนี้ (ที่มา ): ml …

23
ใช้กฎการหารหารด้วย 7
วิธีตรวจสอบว่าตัวเลขทศนิยมหารด้วย 7 ได้ไหม: ลบตัวเลขสุดท้าย คูณด้วย 2 และลบออกจากสิ่งที่เหลืออยู่ หากผลลัพธ์ถูกหารด้วย 7 ตัวเลขเดิมจะหารด้วย 7 (อธิบายด้วยเช่นที่นี่ ) กฎนี้ดีสำหรับการตรวจสอบหารด้วยตนเอง ตัวอย่างเช่น: 2016 หารด้วย 7 หรือไม่ ลบ6*2ออกจาก 201; เราได้ 189. นี่หารด้วย 7 ได้ไหม? เพื่อตรวจสอบลองใช้กฎอีกครั้ง ลบ9*2ออกจาก 18; เราได้ 0 ดังนั้น 2559 หารด้วย 7 ได้ ในการท้าทายนี้คุณควรใช้กฎนี้จนกว่าสถานะการหารจะชัดเจนซึ่งก็คือจำนวนไม่เกิน 70 (อย่างไรก็ตามดูรายละเอียดด้านล่าง) ทำให้ฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ อินพุต : จำนวนเต็มบวก รหัสของคุณควรรองรับอินพุตสูงสุด 32767 (สนับสนุนจำนวนเต็มความแม่นยำโดยพลการเป็นโบนัสดูด้านล่าง) เอาท์พุท : จำนวนเต็ม (อาจเป็นลบ) …

15
สร้างล่ามยูนิคอร์น
เมื่อเร็ว ๆ นี้ฉันทำผิดและฉันเขียนยูนิคอร์นแทน Unicode ฉันทำในสิ่งที่คนปกติจะทำและฉันทำesolangจากมัน ในการท้าทายนี้คุณจะต้องเขียนล่ามยูนิคอร์น เนื่องจากโปรแกรมยูนิคอร์นนั้นยาวมากคุณต้องเขียนล่ามสั้น ๆ เพื่อชดเชยสิ่งนี้ ตัวอย่าง เหล่านี้คือผลลัพธ์ที่ transpiled ไม่ใช่ผลลัพธ์ที่แปลจริงที่โปรแกรมของคุณควรส่ง 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 1 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 …

6
วาด Pentaflake
ก่อนอื่น ... ฉันอยากจะขอให้ทุกคนมีความสุขในวันคริสต์มาส (ขออภัยถ้าฉันมาช้าไปหนึ่งวันสำหรับเขตเวลาของคุณ) เพื่อเป็นการเฉลิมฉลองโอกาสที่เราจะวาดเกล็ดหิมะ เพราะปีนี้เป็น 201 5และคริสมาสต์อยู่บน 2 5วัน (สำหรับส่วนใหญ่ของคน) เราจะวาดPentaเกล็ด Pentaflake เป็นเศษส่วนที่เรียบง่ายประกอบด้วยรูปห้าเหลี่ยม นี่คือตัวอย่างเล็ก ๆ น้อย ๆ(นำมาจากที่นี่) : Pentaflake แต่ละอันมีคำสั่ง n Pentaflake ของคำสั่ง 0 เป็นเพียงรูปห้าเหลี่ยม สำหรับคำสั่งอื่นทั้งหมด n, Pentaflake ประกอบด้วย 5 Pentaflakes ของคำสั่งก่อนหน้าซึ่งจัดขึ้นรอบที่ 6 Pentaflake ของคำสั่งก่อนหน้า ตัวอย่างเช่น Pentaflake ของคำสั่งที่ 1 ประกอบด้วย 5 รูปห้าเหลี่ยมที่จัดเรียงรอบรูปห้าเหลี่ยมกลาง อินพุต nการสั่งซื้อ สิ่งนี้อาจได้รับในลักษณะใด ๆ ยกเว้นของตัวแปรที่กำหนดไว้ล่วงหน้า เอาท์พุต รูปภาพของคำสั่งnPentaflake …

30
ดริฟท์อาร์เรย์
Driftsort เป็นวิธีง่ายๆในการ "เรียงลำดับ" อาเรย์ มันทำงานโดย "การเลื่อน" หรือ "การหมุน" องค์ประกอบที่อยู่ในอาร์เรย์จนกว่าอาร์เรย์จะถูกจัดเรียงหรือจนกว่าอาร์เรย์จะล้มเหลวในการเรียงลำดับ ลองมาดูสองตัวอย่าง [10, 2, 3, 4, 7]ก่อนพิจารณาอาร์เรย์ เนื่องจากอาร์เรย์ไม่ได้เรียงเราจึงหมุนหนึ่งครั้ง (สิ่งนี้สามารถเกิดขึ้นได้ในทั้งสองทิศทางตราบใดที่ยังคงอยู่ในทิศทางเดียวกัน) จากนั้นอาร์เรย์จะกลายเป็น: [7, 10, 2, 3, 4] นี่ไม่ใช่การเรียงลำดับดังนั้นเราจึงหมุนอีกครั้ง [4, 7, 10, 2, 3] และอีกครั้ง: [3, 4, 7, 10, 2] และเป็นครั้งสุดท้าย: [2, 3, 4, 7, 10] และมันก็จัดเรียง! ดังนั้นอาร์เรย์[10, 2, 3, 4, 7]จึงลอยได้ นี่คือการหมุนทั้งหมดของอาเรย์เพื่อความชัดเจน: [10, 2, …

3
ค้นหาตัวเลข N ตัวที่ใหญ่ที่สุดในตาราง W ด้วย H
เขียนโปรแกรมหรือฟังก์ชั่นที่รับจำนวนเต็มบวก N และตารางทศนิยม (0 ถึง 9) พร้อมความกว้าง W และความสูง H (ซึ่งเป็นจำนวนเต็มบวกด้วย) คุณสามารถสันนิษฐานได้ว่า N จะน้อยกว่าหรือเท่ากับใหญ่กว่าของ W และ H พิมพ์หรือส่งกลับหมายเลข N ที่ต่อเนื่องกันมากที่สุดซึ่งปรากฏในแนวนอนหรือแนวตั้งในตารางเขียนตามลำดับการอ่านปกติหรือย้อนกลับ ไม่พิจารณาเส้นแนวทแยงของตัวเลข กริดไม่ได้ล้อมรอบนั่นคือมันไม่มีเงื่อนไขขอบเขตเป็นระยะ ตัวอย่างเช่นตาราง 3 × 3 928 313 049 จะ9เป็นเอาต์พุตสำหรับ N = 1 94เป็นเอาต์พุตสำหรับ N = 2 และ940เป็นเอาต์พุตสำหรับ N = 3 ตาราง 4 × 3 7423 1531 6810 จะมี8ผลลัพธ์เป็น N …
25 code-golf  math  number  grid 

5
แยกวิเคราะห์ไวยากรณ์สองมิติ
พื้นหลัง อลิซและบ็อบกำลังสร้างภาษากอล์ฟเพื่อชนะการท้าทาย PPCG ทุกครั้ง อลิซต้องการสร้างภาษาสองมิติเช่น> <> แต่บ๊อบชอบไวยากรณ์ prefix-infix เหมือนใน J ในการประนีประนอมพวกเขาตัดสินใจที่จะสร้างภาษา prefix-infix สองมิติ โปรแกรมแยกวิเคราะห์เป็นความเจ็บปวดที่จะเขียนและพวกเขาต้องการความช่วยเหลือจากคุณ! ข้อกำหนดทางไวยากรณ์ ในภาษาของอลิซและบ๊อบมีตัวแปรซึ่งเป็นตัวแทนจากตัวอักษร ASCII ตัวพิมพ์เล็กa-zและฟังก์ชั่นA-Zซึ่งจะแทนด้วยตัวอักษรตัวพิมพ์ใหญ่ ASCII สามารถเรียกใช้ฟังก์ชันด้วยหนึ่งหรือสองอาร์กิวเมนต์ โปรแกรมเป็นตารางสี่เหลี่ยมของตัวอักษรa-zA-Zและช่องว่างและมุมบนด้านซ้ายไม่ต้องมีช่องว่าง นี่คือตัวอย่างของโปรแกรมที่ถูกต้อง: F Gy H R x เมื่อโปรแกรมจะแยกกันก็กลายเป็นแสดงออกของภาษาซี (C, Java, Python ... ) ที่มีตัวแปรตัวเดียวและบริการโทรฟังก์ชั่นในรูปแบบที่หรือ<func>(<arg>) <func>(<arg1>,<arg2>)ตัวอย่างเช่นโปรแกรมข้างต้นให้ผลลัพธ์ในนิพจน์นี้: F(H(R(x)),G(x,y)) รายละเอียดของกระบวนการแยกวิเคราะห์เป็นดังนี้: ช่องว่างเป็นเพียงฟิลเลอร์ดังนั้นพวกเขาจึงไม่แยกวิเคราะห์ ตัวแปรทุกตัวa-zจะถูกวิเคราะห์คำเหมือนตัวเองเสมอ ทุกฟังก์ชั่นA-Zจะถูกแยกวิเคราะห์เป็นการเรียกใช้ฟังก์ชัน อาร์กิวเมนต์ของมันคือนิพจน์ที่ใกล้เคียงที่สุดที่อยู่ด้านล่างและทางขวาในกริดตามลำดับนี้ หากมีสิ่งใดสิ่งหนึ่งเหล่านี้อยู่ก็จะได้รับเป็นอาร์กิวเมนต์เพียงอย่างเดียว คุณสามารถสันนิษฐานได้ว่าฟังก์ชั่นทั้งหมดมีอาร์กิวเมนต์อย่างน้อยหนึ่งรายการในตาราง ในตัวอย่างข้างต้นตัวแปรxและการyแยกวิเคราะห์เป็นตัวเอง ฟังก์ชันRไม่มีอะไรด้านล่างและxทางด้านขวาดังนั้นจึงแยกวิเคราะห์เป็นการเรียกใช้อาร์กิวเมนต์R(x)เดียว ในทำนองเดียวกันHจะแยกเป็นH(R(x))เพราะมันมีRด้านล่าง ฟังก์ชั่นGที่มีxอยู่ด้านล่างและyไปทางขวาของตนเพื่อให้มันแยกวิเคราะห์เป็นและในทำนองเดียวกันสำหรับG(x,y) Fการแยกวิเคราะห์นิพจน์ที่มุมซ้ายบนเป็นผลลัพธ์ของกระบวนการแยกวิเคราะห์ อินพุตและเอาต์พุต การป้อนข้อมูลของคุณเป็นอาร์เรย์อักขระที่ไม่ว่างเปล่า …

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