Di Amerika Serikat , dua arah yang berlawanan dari lalu lintas di jalan dipisahkan oleh garis kuning putus-putus jika melewati diperbolehkan dan dua garis kuning solid jika lewat tidak diizinkan.

(Hanya satu sisi yang dapat dilewati untuk memungkinkan melintas di sisi itu, dan garis kuning dapat berarti hal-hal lain seperti pusat atau jalur yang dapat dibalik, tetapi kami tidak memedulikan kasus-kasus tersebut.)
Tulis program yang menggunakan a jangka panjang dikodekan string Puntuk melewati dan Nuntuk tidak lewat , dan mencetak versi ASCII jalan yang sesuai. Kecuali untuk garis tengah, jalan selalu memiliki pola yang sama, yang dapat dengan mudah disimpulkan dari contoh di bawah ini.
Akan ada angka desimal positif sebelum masing P- masing dan Ndalam string input. Angka ini menentukan panjang bagian yang melintas atau tidak ada bagian yang melintas dari bagian jalan saat ini.
Contohnya
Masukan dari 12N akan menghasilkan 12 kolom tanpa jalan yang lewat (garis tengah semua =):
____________
============
____________
Masukan dari 12P akan menghasilkan 12 kolom jalan yang lewat ( - pengulangan garis tengah ):
____________
- - - - - -
____________
Lewat dan no passing kemudian dapat digabungkan, misalnya 4N4P9N7P1N1P2N2Pakan menghasilkan:
______________________________
====- - =========- - - -=-==-
______________________________
Ini adalah 4 kolom tanpa lewat , lalu 4 lewat , lalu 9 tanpa lewat , dll.
Perhatikan bahwa zona yang lewat selalu dimulai dengan tanda hubung ( -) di sisi paling kiri, bukan spasi ( ). Ini wajib diisi.
Detail
- Masukan tidak akan pernah memiliki dua
Nzona atau duaPzona berturut-turut. misalnya4P5Ptidak akan pernah terjadi. - Anda tidak perlu mendukung surat tanpa angka positif terkemuka. Polos
Pakan selalu1P, plainNakan selalu1N. - Mungkin ada ruang trailing selama mereka tidak melampaui kolom terakhir jalan. Mungkin ada satu trailing newline opsional.
- Alih-alih sebuah program, Anda dapat menulis fungsi yang mengambil string yang dikodekan run-length dan mencetak atau mengembalikan jalan ASCII.
- Mengambil input dengan cara standar apa pun (stdin, baris perintah, fungsi arg).
Kode terpendek dalam byte menang. Tiebreaker adalah posting sebelumnya.