ในสหรัฐอเมริกาทั้งสองทิศทางที่ตรงข้ามของการจราจรบนถนนจะถูกคั่นด้วยเส้นสีเหลืองประถ้าอนุญาตให้ผ่านและเส้นสีเหลืองทึบสองเส้นถ้าผ่านไม่ได้รับอนุญาต

(เพียงด้านเดียวสามารถประเพื่อให้ผ่านด้านนั้นและเส้นสีเหลืองอาจหมายถึงสิ่งอื่น ๆ เช่นกึ่งกลางหรือเลนย้อนกลับ แต่เราไม่ได้เกี่ยวข้องกับกรณีเหล่านี้)
จงเขียนโปรแกรมที่ใช้ในที่ทำงานระยะเวลาในการเข้ารหัสสตริงของPสำหรับการส่งผ่านและNสำหรับไม่ผ่านและพิมพ์รุ่น ASCII ของถนนที่สอดคล้องกัน ยกเว้นเส้นกลางถนนมีรูปแบบเดียวกันเสมอซึ่งสามารถอนุมานได้ง่ายจากตัวอย่างด้านล่าง
จะมีตัวเลขทศนิยมเป็นบวกก่อนละPและNในสตริงที่ป้อน หมายเลขนี้กำหนดความยาวของพื้นที่ผ่านหรือไม่ผ่านของส่วนปัจจุบันของถนน
ตัวอย่าง
อินพุตของ12Nจะผลิต 12 คอลัมน์ของถนนที่ไม่ผ่าน (เส้นกลางทั้งหมด=):
____________
============
____________
อินพุตของ12Pจะผลิต 12 คอลัมน์ของถนนที่ผ่าน (เส้นกลาง- ซ้ำ):
____________
- - - - - -
____________
การผ่านและไม่ผ่านสามารถรวมกันได้เช่น4N4P9N7P1N1P2N2Pจะสร้าง:
______________________________
====- - =========- - - -=-==-
______________________________
เหล่านี้คือ 4 ไม่มีคอลัมน์ผ่านแล้ว 4 ผ่านแล้ว 9 ไม่ผ่านฯลฯ
โปรดทราบว่าเขตผ่านจะเริ่มต้นด้วยเส้นประ ( -) ทางด้านซ้ายสุดไม่ใช่ช่องว่าง ( ) สิ่งนี้จำเป็น
รายละเอียด
- อินพุตจะไม่มีสอง
NโซนหรือสองPโซนในหนึ่งแถว เช่น4P5Pจะไม่เกิดขึ้น - คุณไม่จำเป็นต้องสนับสนุนจดหมายโดยไม่มีหมายเลขบวกนำหน้า ธรรมดา
Pจะเป็น1Pธรรมดาจะเป็นN1N - อาจมีช่องว่างต่อท้ายตราบใดที่ไม่ขยายเกินคอลัมน์สุดท้ายของถนน อาจมีบรรทัดใหม่ต่อท้ายที่เป็นตัวเลือกหนึ่งบรรทัด
- แทนที่จะเป็นโปรแกรมคุณสามารถเขียนฟังก์ชั่นที่ใช้ในสตริงที่เข้ารหัสแบบรันไทม์แล้วพิมพ์หรือส่งคืนถนน ASCII
- รับอินพุตในวิธีมาตรฐานใด ๆ (stdin, บรรทัดคำสั่ง, ฟังก์ชัน arg)
รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ Tiebreaker เป็นโพสต์ก่อนหน้า