ความท้าทาย
โปรแกรมหรือฟังก์ชั่นของคุณจะยอมรับอินพุตสตริงเดียวจาก STDIN หรือพารามิเตอร์ฟังก์ชั่น คุณสามารถสันนิษฐานได้ว่าการป้อนข้อมูลจะมีเพียงตัวอักษรตัวอักษร (a-zA-Z) ช่องว่างและหยุดเต็ม ข้อมูลที่ป้อนเข้านั้นไม่ตรงตามตัวพิมพ์ใหญ่และตัวพิมพ์ดังนั้นคุณควรปฏิบัติต่อ 'a' เหมือนกับที่คุณปฏิบัติกับ 'A'
สำหรับอักขระแต่ละตัวในสตริงคุณจะแสดงผลลัพธ์ของสิ่งปลูกสร้างตามข้อกำหนดต่อไปนี้
อาคารแต่ละหลังจะต้องมีหลังคาที่กำหนดโดยขีดล่างบนบรรทัดบนสุดจากนั้นใช้เครื่องหมายทับ, ช่องว่าง, เครื่องหมายแบ็กสแลชในบรรทัดที่สอง
_
/ \
จากนั้นคุณจะมีจำนวนชั้นตรงกับหมายเลขตัวอักษร (a = 1, b = 2, c = 3 ฯลฯ ) ซึ่งแสดงโดยผนัง (|) แต่ละด้านและช่องว่างตรงกลาง พื้นด้านล่าง (และชั้นล่างเท่านั้น) ควรมีฐานรากซึ่งเป็นขีดล่างระหว่างผนัง แบบนี้...
|_|
ตัวอย่างเช่น 'b' จะมีลักษณะเช่นนี้
_
/ \
| |
|_|
ตอนนี้เรารู้แล้วว่าอาคารที่แคบและสูงมากไม่สามารถยืนได้และจะต้องกว้างขึ้นที่ฐานดังนั้นจึงไม่มีอาคารใดที่สามารถยืนสูงกว่าสามชั้นได้โดยไม่ต้องมีการสนับสนุนเพิ่มเติม ดังนั้นทุกสามระดับ (ไม่น้อยกว่า) คุณควรเพิ่ม 'เลเยอร์การขยับขยาย' เลเยอร์ที่กว้างขึ้นประกอบด้วยเครื่องหมายทับและแบ็กสแลชโดยตรงเหนือผนังของส่วนด้านล่างและส่วนด้านล่างควรมีช่องว่างสองช่องกว้างกว่าส่วนด้านบน ชั้นพิเศษไม่นับรวมกับความสูงของอาคาร
อาคารไม่ควรทับซ้อนกัน แต่ไม่ควรมีช่องว่างที่ไม่จำเป็นระหว่างพวกเขาและพื้นดินราบเสมอดังนั้นอาคารทั้งหมดควรมีฐานอยู่ในระดับเดียวกัน
ตัวอย่างเช่น 'abcdefga' จะมีลักษณะเช่นนี้
_
/ \
_ | |
_ / \ | |
_ / \ | | | |
/ \ | | | | / \
_ | | | | | | | |
_ / \ | | | | / \ | |
_ / \| | | | / \| | | | _
/ \| || |/ \| || |/ \/ \
|_||_||_||___||___||___||_____||_|
ช่องว่างในอินพุตสตริงควรแสดงด้วยเว้นวรรคสองครั้ง
การหยุดแบบเต็มในอินพุตสตริงควรแสดงด้วยเศษหินหรืออิฐเช่นนี้
/\/\
ตัวอย่างเพิ่มเติม
อินพุต = Hello world.
เอาท์พุท =
_
/ \
| |
| |
| |
/ \
| |
| | _
| | / \
/ \ | |
| | | |
_ | | _ | |
/ \ | | / \ / \
| | / \ | | | |
| | | | | | | |
_ _ | | | | | | | | _
/ \ / \ / \ | | / \ / \ / \
| | | | | | / \ | | | | | |
| | | | | | | | | | | | | |
| | | | | | | | | | | | | |
_ / \ / \ / \ | | / \ / \ / \
/ \ | | | | | | / \ | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | _ / \ / \ / \ | | / \ / \ / \
/ \ / \ | | | | | | / \ | | | | | | _
| | | | | | | | | | | | | | | | | | / \
| | | | | | | | | | | | | | | | | | | |
| | | | / \/ \/ \ | | / \/ \/ \ | |
/ \/ \| || || | / \| || || | | |
| || || || || | | || || || |/ \
|_____||___||_______||_______||_________| |_______________||_________||___________||_______||___|/\/\
อินพุต = lorem ipsum
_
/ \
_ | |
/ \ | |
_ | | | |
/ \ | | / \
| | _ | | | |
| | / \ / \ | |
_ | | | | | | | |
/ \ / \ | | | | / \
| | | | _ | | | | | | _
| | | | / \ / \ / \ | | / \
_ | | | | | | | | | | | | | |
/ \ / \ / \ | | | | | | / \ | |
| | | | | | | | | | | | | | | |
| | | | | | / \ / \ / \ | | / \
| | | | | | | | _ | | | | | | | |
/ \ / \ / \ | | / \ | | | | / \ | |
| | | | | | | | | | | | | | | | | |
| | | | | | / \ | | / \ / \ | | / \
| | | | | | | | | | | | | | | | | |
/ \ / \ / \ _ | | / \ | | | | / \ | |
| | | | | | / \ | | | | | | | | | | | |
| | | | | | | | / \ | | / \ / \ | | / \
| | | | | | | | | | | | | | | | | | | |
/ \/ \/ \ | | | | / \ | | | | / \ | |
| || || |/ \ | | | | | | | | | | | |
| || || || |/ \ | |/ \/ \| |/ \
|_______||_________||___________||___||_________| |_____||___________||_____________||_____________||_________|
อินพุต = a.a.a.x.x.x.a.a.a
_ _ _
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
| | | | | |
| | | | | |
| | | | | |
/ \ / \ / \
_ _ _ | | | | | | _ _ _
/ \ / \ / \ | | | | | | / \ / \ / \
|_|/\/\|_|/\/\|_|/\/\|_______________|/\/\|_______________|/\/\|_______________|/\/\|_|/\/\|_|/\/\|_|
กฎระเบียบ
- ของหลักสูตรนี้เป็นรหัสกอล์ฟคะแนนต่ำสุดเป็นไบต์ชนะ
- ใช้กฎช่องโหว่มาตรฐาน
- จำนวนบรรทัดว่างเพิ่มเติมใด ๆ ก่อนหรือหลังเอาต์พุตอนุญาต
- คุณสามารถเลือกที่จะแสดงผลลัพธ์ทั้งหมดในสตริงเดียวหรือเสนอเอาท์พุทเป็นอาร์เรย์ที่แต่ละองค์ประกอบแทนหนึ่งบรรทัดของเอาต์พุตหรือส่งไปยัง STDOUT
บันทึก
นี่คือการโพสต์แรกของฉันเพื่อ PPCG ดังนั้นโปรดไปกับฉัน ผ่านกล่องทรายมาแล้ว จุดลบหรือการปรับปรุงใด ๆ ที่เป็นไปได้โปรดโพสต์เป็นความคิดเห็นและฉันจะทำสิ่งที่ฉันทำได้
[a,z]
, [1.26]
ชิ้นส่วนชำเลืองกล่าวถึง การมีตัวเลือกมักจะดีที่สุด (เว้นแต่จะเป็นส่วนสำคัญของการท้าทาย (ไม่ใช่ที่นี่)
[a,z]
และ[A,Z]
จะ[1,26]
ดูเหมือนว่าเป็นความต้องการที่ไม่มีจุดหมาย มันจะเป็นการดีกว่าถ้าคุณใช้จำนวนเต็มรายการเป็นอินพุต (ต้อง0
เป็นอินพุตสำหรับเศษหินหรืออิฐ) นอกจากนี้การโพสต์ความท้าทายของคุณหลังจากที่อยู่ใน Sandbox เพียง 21 ชั่วโมงโดยไม่ต้องรอรับคะแนนโหวตหรือข้อเสนอแนะจากผู้ใช้มากกว่าหนึ่งรายจะไม่นับว่ามีการ "ผ่านแซนด์บ็อกซ์" ขอแนะนำให้ทิ้งความท้าทายไว้ใน Sandbox เป็นเวลาอย่างน้อย 48-72 ชั่วโมงเพื่อให้ผู้คนมีเวลามากพอที่จะทบทวนพวกเขา