ความท้าทาย
ในการท้าทายนี้คุณต้องทำงานสองอย่างที่แตกต่างกัน (แต่เกี่ยวข้องกัน) ขึ้นอยู่กับลำดับของอินพุต
โปรแกรมของคุณจะรับสตริงs
และจำนวนเต็มn
เป็นอินพุตและจะ
- แบ่งออก
s
เป็นชิ้นยาวn
ถ้าs
มาก่อน องค์ประกอบสุดท้ายจะสั้นลงหากจำเป็น - แบ่งออก
s
เป็นn
ชิ้นยาวเท่ากันถ้าn
มาก่อน หากlen(s)
ไม่ใช่หลายองค์ประกอบn
แรกlen(s) mod n
จะเป็นอีกต่อไป
คุณสามารถรับอินพุตทั้งสองนี้ได้เท่านั้น s
จะไม่ประกอบด้วยตัวเลขเท่านั้น
หมายเหตุ
- คุณสามารถใช้การทำแผนที่ย้อนกลับ โปรดสังเกตสิ่งนี้ในคำตอบของคุณหากคุณทำเช่นนั้น
s
จะมีอักขระ ASCII ที่พิมพ์ได้เท่านั้น(ไม่มีบรรทัดใหม่)- คุณไม่สามารถใช้บิวอินใด ๆ ที่แก้ปัญหาทั้งสองงานได้โดยตรง อนุญาตบิวด์อื่นทั้งหมด
- คุณต้องรับทั้งอาร์กิวเมนต์จากแหล่งเดียวกัน
- คุณอาจรับข้อโต้แย้งในรายการที่สั่งซื้อหรือรูปแบบอื่นใดที่ระบุคำสั่งของพวกเขาได้อย่างชัดเจนตราบใดที่ยังไม่คลุมเครือ
- คุณอาจรับอินพุตเป็นหนึ่งสตริง / สตรีมและใช้อักขระที่ไม่ใช่อินพุตที่ถูกต้อง (เช่น nullbyte) เพื่อแยกพวกเขา
n
จะเท่ากับหรือน้อยกว่าความยาวของs
และมากกว่าศูนย์- คุณสามารถส่งออกรายการผลลัพธ์ในรูปแบบที่เป็นกันเองตราบใดที่มันระบุอย่างชัดเจนถึงชิ้นส่วนและคำสั่งของพวกเขา
ตัวอย่าง
การป้อนข้อมูล: programming, 3
องค์ประกอบสุดท้ายมีเพียง 2 ตัวอักษรเพราะ 11 ไม่หารด้วย 3.
เอาท์พุท: ["pro", "gra", "mmi", "ng"]
อินพุต: 3, programming
11 ไม่ได้เป็นหลายเท่าของ 3 ดังนั้นองค์ประกอบ 2 รายการแรกจะเป็นอีกต่อไป:
เอาต์พุต: ["prog", "ramm", "ing"]
กฎระเบียบ
- อนุญาตให้ใช้ฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ
- กฎเริ่มต้นสำหรับอินพุต / เอาต์พุต
- ช่องโหว่มาตรฐานใช้
- นี่คือโค้ดกอล์ฟดังนั้นจำนวนไบต์ที่น้อยที่สุดจึงชนะ Tiebreaker เป็นการส่งก่อนหน้า
กรณีทดสอบ
กรณีทดสอบสร้างขึ้นด้วยโปรแกรม Pyth นี้ (ใช้ builtins ดังนั้นจึงไม่มีคำตอบที่ถูกต้อง) ขอบคุณ @FryAmTheEggman ที่ให้บริการเวอร์ชั่นพื้นฐานของสิ่งนั้น!
3, helloworld -> ['hell', 'owo', 'rld'] helloworld, 3 -> ['hel', 'low', 'orl', 'd'] 1, การเขียนโปรแกรม -> ['การเขียนโปรแกรม'] การเขียนโปรแกรม 1 -> ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'm', 'i', 'n', 'g'] 8, การเขียนโปรแกรม -> ['pr', 'og', 'ra', 'm', 'm', 'i', 'n', 'g'] การเขียนโปรแกรม, 8 -> ['programm', 'ing'] 9, รหัสกอล์ฟ -> ['c', 'o', 'd', 'e', '', 'g', 'o', 'l', 'f'] code golf, 9 -> ['code golf'] 4, 133tspeak -> ['133', 'ts', 'pe', 'ak'] 133tspeak, 4 -> ['133t', 'spea', 'k']
Happy Coding!