ถ้าคุณโยนไข่ ASCII ในทิศทางที่กำหนดคุณท้ายด้วยเครื่องหมาย ASCII ขนาด n มัน "เริ่มต้น" ด้วยหนึ่งo
(ไข่แดง) และดำเนินการต่อในทิศทางที่กำหนดด้วย "บรรทัด" ซึ่งประกอบด้วย 2 ถึงn *
's *
's ถูกแยกออกจาก 'พื้นที่' หนึ่งและo
และทั้งหมดที่ 'สาย' ของ*
' s จะถูกคั่นด้วย 'เส้น' ของ 'พื้นที่'
ทิศทางของแท่งอาจเป็นหนึ่งในแปดทิศทางจากo
ตัวอย่างเช่น:
1 2 3
4 o 5
6 7 8
นี่คือตัวอย่างของเครื่องหมาย ASCII ขนาด 4 ทิศทาง5
, 2
และ3
ตามลำดับ ด้านซ้ายเป็นเครื่องหมาย ASCII จริงและด้านขวาเป็นเครื่องหมายเดียวกัน แต่มี "เส้น" ของ "พื้นที่" แทนที่ด้วย "เส้น" ที่เกิดขึ้นจริง (เช่น-
หรือ\
หรือ|
ขึ้นอยู่กับทิศทาง) เพียงเพื่อชี้แจงสิ่งที่มีความหมายโดย "เส้น" ของพื้นที่
Size 4, direction 5
* | | |*
* | |*|
* * |*| |*
o * o| |*|
* * |*| |*
* | |*|
* | | |*
Size 4, direction 2
* * * * * * * *
-------
* * * * * *
-------
* * * *
-------
o o
Size 4, direction 3
* *
\
* * *\*
\ \
* * * *\*\*
\ \ \
o * * * o\*\*\*
ท้าทาย
รับn ≥ 1และหนึ่งใน 8 ทิศทางที่เป็นไปได้เขียนฟังก์ชั่นหรือโปรแกรมที่ส่งออกเครื่องหมาย ASCII ขนาดnในทิศทางที่กำหนด
อินพุตและเอาต์พุต
อนุญาตรูปแบบอินพุตที่สอดคล้องและสมเหตุสมผลใด ๆ คุณไม่จำเป็นต้องแมปทิศทางไปยังจำนวนเต็ม 1 ถึง 8 ในแบบเดียวกับที่ฉันทำ - หากวิธีอื่นในการระบุทิศทางนั้นง่ายขึ้นให้ไปข้างหน้า แต่พูดในสิ่งที่คุณทำถ้ามันไม่ชัดเจน
เอาท์พุทจะประกอบด้วยo
, *
ช่องว่าง (U + 0020) และการขึ้นบรรทัดใหม่ (U + 000A) ที่ผลิตเครื่องหมายแอสกี นำหน้า, ต่อท้าย, หรืออนุญาตให้ใช้ช่องว่างเพิ่มเติมในบรรทัดใดก็ได้
กฎระเบียบ
ตัวอย่างเพิ่มเติม
Size 1, any direction
o
Size 3, direction 6
* * o
* *
*
Size 5, direction 7
o
* *
* * *
* * * *
* * * * *