งาน
ในความท้าทายนี้งานของคุณคือการวาดภาพตัวแทน ASCII ของกล่องหลายกล่องที่มีความสูงเพิ่มขึ้น คุณจะได้รับเป็นอินพุตจำนวนสแต็กซึ่งเป็นจำนวนเต็มบวก 2x2สแต็คแรกมีกล่องหนึ่งที่มีขนาด สแต็คที่สองมี 2 3x3กล่องขนาด โดยทั่วไปkสแต็กที่สิบมีkกล่องขนาด(k+1)x(k+1)
เส้นขอบของแต่ละกล่องถูกวาดโดยใช้ตัวอักษร-|+และการตกแต่งภายในประกอบด้วยช่องว่าง กล่องที่อยู่ติดกันแบ่งปันเส้นขอบของพวกเขาและควรวาดมุมด้วยเสมอ+แม้ว่าพวกเขาจะเป็นส่วนหนึ่งของเส้นขอบของกล่องอื่น
ตัวอย่าง
เอาท์พุทสำหรับ1:
++
++
เอาท์พุทสำหรับ2:
+-+
| |
+-+
++ |
++-+
เอาท์พุทสำหรับ3:
+--+
| |
| |
+--+
| |
+-+ |
| +--+
+-+ |
++ | |
++-+--+
เอาท์พุทสำหรับ5:
+----+
| |
| |
| |
| |
+----+
| |
| |
| |
+---+ |
| +----+
| | |
| | |
+---+ |
| | |
| +----+
+--+ | |
| +---+ |
| | | |
+--+ | |
| | +----+
+-+ +---+ |
| +--+ | |
+-+ | | |
++ | | | |
++-+--+---+----+
กฎและเกณฑ์การให้คะแนน
อินพุตสามารถรับได้จาก STDIN เป็นอาร์กิวเมนต์บรรทัดคำสั่งหรือเป็นอาร์กิวเมนต์ของฟังก์ชัน เอาต์พุตต้องไปที่ STDOUT หรือใกล้เคียงที่สุด อนุญาตให้ใช้ช่องว่างที่ จำกัด จำนวนใดก็ได้ตามที่มีมาก่อนและขึ้นบรรทัดใหม่ แต่ไม่สามารถเว้นวรรคก่อนหน้าเพิ่มเติมได้
นี่คือโค้ดกอล์ฟดังนั้นจำนวนไบต์ที่ต่ำที่สุดจึงชนะ ช่องโหว่มาตรฐานไม่ได้รับอนุญาต
Integer.MaxValueเป็นอินพุต
Integer.MaxValueหรือเทียบเท่า
nและn-1ค่อนข้างสำคัญ สอง pluses จะไม่ทับซ้อนกัน