ในฐานะโปรแกรมเมอร์คุณอาจเคยได้ยินเกี่ยวกับเครื่องหมายทับซ้ายและย้อนกลับ แต่คุณเคยได้ยินเรื่อง downslashes หรือไม่ นั่นคือเมื่อคุณใช้สแลชจำนวนมากเชื่อมต่อปลายของพวกเขาและดึงพวกเขาลงไป
สำหรับความท้าทายในวันนี้คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้สายอักขระที่ประกอบด้วยสแลชและส่งออกสแลชทั้งหมดที่วาดลงในบรรทัดที่เชื่อมต่อพวกเขา นี่จะชัดเจนมากขึ้นถ้าคุณเห็นตัวอย่าง รับสาย\\\//\/\\
คุณควรส่งออก:
\
\
\
/
/
\
/
\
\
นี่คือคำอธิบายบางอย่าง:
จะต้องมีหนึ่งสแลชต่อบรรทัด
บรรทัดแรกจะมีช่องว่างนำหน้า 0 ช่อง
สำหรับเครื่องหมายสแลชแต่ละคู่:
หากพวกเขาแตกต่างกันพวกเขาจะถูกดึงในคอลัมน์เดียวกัน ตัวอย่างเช่น
\/
จะให้:\ /
หากพวกเขาเป็นตัวละครเดียวกันตัวล่างจะอยู่ในทิศทางที่ชี้ไปนั่นคือการย้ายไปทางขวาสำหรับแบ็กสแลชและย้ายไปทางซ้ายสำหรับสแลชข้างหน้า ดังนั้น
\\//
จะให้\ \ / /
แต่ละบรรทัดอาจมีช่องว่างต่อท้ายพิเศษตราบใดที่สิ่งนี้ไม่เปลี่ยนลักษณะที่ปรากฏของเอาต์พุต ขึ้นอยู่กับการขึ้นบรรทัดใหม่และการขึ้นบรรทัดใหม่ชั้นนำด้วยเช่นกัน ไม่อนุญาตให้เว้นวรรคนำหน้า!
เพื่อให้ง่ายกว่านี้คุณสามารถสันนิษฐานได้ว่าสตริงจะไม่มีเครื่องหมายทับซ้ายมากเกินไป กล่าวอีกนัยหนึ่งคำนำหน้าของอินพุตจะไม่มีเครื่องหมายทับซ้ายมากกว่าแบ็กสแลชดังนั้นอินพุตเช่น\\////
หรือ//
จะไม่ได้รับ ซึ่งหมายความว่าอินพุตทุกรายการจะเริ่มต้นด้วยแบ็กสแลช
หากอินพุตของคุณถูกใช้เป็นตัวอักษรสตริงคุณอาจหลีกเลี่ยงแบ็กสแลชได้หากจำเป็น คุณไม่จำเป็นต้องจัดการอินพุตที่ว่างเปล่าหรือมีอักขระอื่นนอกเหนือจากเครื่องหมายทับ
คุณอาจจะส่งออกโดยใด ๆรูปแบบที่เหมาะสม
ตามปกตินี่เป็นความท้าทายของการเล่นกอล์ฟดังนั้นพยายามแก้ปัญหาให้สั้นที่สุดแม้ว่าคุณจะเลือกภาษาที่ค่อนข้างยาก คะแนนโบนัสสำหรับการอธิบายเทคนิคที่น่าสนใจใด ๆ ที่คุณใช้ในการถอดไบต์!
ตัวอย่าง
#Input
\\\\\\\\\\\
#Output
\
\
\
\
\
\
\
\
\
\
\
#Input
\\\//\\/\//\\///
#Output
\
\
\
/
/
\
\
/
\
/
/
\
\
/
/
/
#Input
\/\/\/
#Output
\
/
\
/
\
/