เขียนโปรแกรมที่ใช้ในบล็อกสี่เหลี่ยมของข้อความที่ประกอบด้วยX
's และ.
' s เช่นคร่าวๆนี้A
:
......
..XX..
.X..X.
.XXXX.
.X..X.
.X..X.
เอาท์พุทการเป็นตัวแทนของกริดนี้หมุน 45 องศาทวนเข็มนาฬิกาโดยวาดเครื่องหมายสแลช - ไปข้างหน้าหรือข้างหลังขึ้นอยู่กับบริบท - ทุก ๆX
เส้นขอบ a .
หรือด้านข้างของกริด (มีช่องว่างเติมในส่วนที่เหลือ)
/\/\
/ /\ \
\/ / \
/\/ /\ \
\ / \/
\ \
\ \
\/
จำนวนช่องว่างต่อท้ายและนำหน้า (และขึ้นบรรทัดใหม่) ไม่สำคัญตราบใดที่รูปร่างของX
อินพุตในนั้นถูกดูแลโดยเครื่องหมายทับ มันตกลงเพื่อตัดแถวพิเศษหรือคอลัมน์ของ.
's
สำหรับ I / O คุณสามารถใช้การรวมกันของพารามิเตอร์บรรทัดคำสั่ง stdin / stdout / files / ตัวอย่างเช่นสคริปต์ของคุณอาจใช้ชื่อไฟล์ของX.
รูปแบบและเขียนไฟล์ใหม่ด้วยรูปแบบสแลช หรือสคริปต์ของคุณอาจใช้X.
รูปแบบจาก stdin ทีละบรรทัด (กดd
เมื่อเสร็จแล้ว) และส่งออกผลลัพธ์ไปยัง stdout
อินพุตอาจมีขนาดใหญ่โดยพลการ แต่คุณอาจสันนิษฐานได้ว่ามีรูปแบบที่ดีเสมอ
ไม่มีอักขระนอกเหนือจาก/ \
และขึ้นบรรทัดใหม่ควรอยู่ในเอาต์พุตใด ๆ
เกณฑ์การให้คะแนน
รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ ใช้https://mothereff.in/byte-counterเป็นตัวนับไบต์หากคุณใช้อักขระที่ไม่ใช่ ASCII
โบนัส:ลบ 50 ไบต์หากคุณสามารถเปลี่ยน (แทนที่, ไม่ลบ) อักขระหนึ่งตัวในโปรแกรมของคุณดังนั้นมันจะออกตารางสแลชหมุน 45 องศาตามเข็มนาฬิกาเช่น:
/\/\
/ /\ \
/ \ \/
/ /\ \/\
\/ \ /
/ /
/ /
\/
ตัวอย่างอินพุต
XXXXXXXXX
X.......X
X.XXXXX.X
X.X...X.X
X.X.X.X.X
X.X...X.X
X.XXXXX.X
X.......X
XXXXXXXXX
XXX...XXX....XXX...XXX
X..X..X..X..X.....X...
XXX...XXX...X.....X.XX
X.....X.....X.....X..X
X.....X......XXX...XXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...X
X...X...............X...............X...........X...................X...X
X...X...XXXXXXXXX...X...XXXXX...XXXXXXXXX...XXXXX...XXXXX...XXXXX...X...X
X...............X.......X...X...........X...........X...X...X.......X...X
XXXXXXXXX...X...XXXXXXXXX...XXXXXXXXX...XXXXX...X...X...X...XXXXXXXXX...X
X.......X...X...............X...........X...X...X...X...X...........X...X
X...X...XXXXXXXXXXXXX...X...X...XXXXXXXXX...XXXXX...X...XXXXXXXXX...X...X
X...X...............X...X...X.......X...........X...........X.......X...X
X...XXXXXXXXXXXXX...XXXXX...XXXXX...X...XXXXX...XXXXXXXXX...X...XXXXX...X
X...........X.......X...X.......X...X.......X...........X...X...........X
X...XXXXX...XXXXX...X...XXXXX...X...XXXXXXXXX...X...X...X...XXXXXXXXXXXXX
X.......X.......X...X...X.......X.......X.......X...X...X.......X.......X
XXXXXXXXXXXXX...X...X...X...XXXXXXXXX...X...XXXXX...X...XXXXX...XXXXX...X
X...........X...X...........X.......X...X.......X...X.......X...........X
X...XXXXX...X...XXXXXXXXX...XXXXX...X...XXXXX...XXXXX...XXXXXXXXXXXXX...X
X...X.......X...........X...........X.......X...X...X...............X...X
X...X...XXXXXXXXX...X...XXXXX...XXXXXXXXX...X...X...XXXXXXXXXXXXX...X...X
X...X...........X...X...X...X...X...........X...............X...X.......X
X...XXXXXXXXX...X...X...X...XXXXX...XXXXXXXXX...XXXXXXXXX...X...XXXXXXXXX
X...X.......X...X...X...........X...........X...X.......X...............X
X...X...XXXXX...XXXXX...XXXXX...XXXXXXXXX...XXXXX...X...XXXXXXXXX...X...X
X...X...................X...........X...............X...............X...X
X...XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
คำถามที่เกี่ยวข้อง:
วาดเส้นโค้งของฮิลแบร์ตโดยใช้เครื่องหมายสแลช
จัดเรียงรูปร่าง ASCII ในแนวนอนและมุมขวาตามแนวทแยงมุม