pengantar
"Yarr !! Kami punya seorang laddie yang menyebut dirinya seorang" programmer "membuat peta untuk 'harta karun kami! Tapi' ini ditulis dengan 'angka-angka aneh' n huruf!" E5, N2, E3 "... apa bahkan maksudnya? Kegilaan! Bahkan tidak bisa menulis peta harta karun yang tepat, tidak berguna, perbaiki itu untuk kita! Kami akan menghadiahkan bagimu bagian dari harta karun! "
Deskripsi Tantangan
Sekelompok perompak mengalami kesulitan membaca peta harta karun. Bisakah Anda menulis program untuk mengubahnya menjadi lebih ... bentuk bajak laut?
Sebagai masukan, Anda akan menerima peta harta karun asli. Ini adalah daftar string yang dipisahkan koma, setiap string yang terdiri dari bagian huruf (yang memberi tahu bajak laut ke arah mana mereka harus berjalan), dan sebagian nomor (yang memberi tahu bajak laut berapa banyak langkah yang harus diambil ke arah itu). Misalnya, peta harta karun berikut:
E2,N4,E5,S2,W1,S3
berarti, "berjalan dua langkah ke timur, berjalan empat langkah ke utara, berjalan lima langkah ke timur, berjalan dua langkah ke selatan, berjalan satu langkah ke barat, lalu berjalan tiga langkah ke selatan."
Sebagai output, Anda akan keluaran peta dalam bentuk grafik, menggunakan karakter >
, ^
, v
, dan <
sebagai pointer. Inilah output untuk input di atas:
>>>>>v
^ v
^ v<
^ v
>>^ X
Perhatikan bahwa kami telah mengganti langkah terakhir ke selatan sebagai X
gantinya. Ini karena langkah terakhir adalah di mana harta karun itu, dan seperti yang kita semua tahu, bajak laut harus memiliki tanda X di peta harta karun mereka, kalau tidak mereka tidak akan tahu cara membacanya.
Ngomong-ngomong, peta tidak akan pernah menyeberang sendiri, jadi Anda tidak perlu khawatir berurusan dengan tumpang tindih. Juga, Anda diizinkan untuk memiliki garis baru di akhir output.
Input dan Output Sampel
S5,W2
v
v
v
v
v
X<
N1,E1,S1,E1,N1,E1,S2
>v>v
^>^X
N1
X
N6,E6,S6,W5,N5,E4,S4,W3,N3,E2,S2,W1,N2
>>>>>>v
^>>>>vv
^^>>vvv
^^^Xvvv
^^^^<vv
^^^<<<v
^^<<<<<
E21,S2
>>>>>>>>>>>>>>>>>>>>>v
X
N12,E11,S12,W2,N4
>>>>>>>>>>>v
^ v
^ v
^ v
^ v
^ v
^ v
^ v
^ v
^ X v
^ ^ v
^ ^ v
^ ^<<
X
harus menandai langkah setelah langkah terakhir, seperti semua gerakan lainnya dihitung. Bayangkan langkah terakhir adalah N3: Anda berjalan tiga langkah ke utara dan menggali, tetapi tidak ada di sini, Anda harus berjalan 2 langkah sebagai gantinya. Saya tidak keberatan jika Anda mematuhi aturan yang ada, karena menambahkan sedikit kasus sudut untuk menangani. Tapi ingat apa yang terjadi pada anak itu.