Tantangan
Kode terpendek berdasarkan jumlah karakter untuk membantu Robot menemukan anak kucing dalam langkah seminimal mungkin.
Para pegolf, ini adalah masa krisis - Kitten hilang dan ini tugas Robot untuk menemukannya! Robot harus mencapai Kitten di jalur sesingkat mungkin. Namun, ada banyak kendala dalam cara Robot, dan dia membutuhkan Anda untuk memprogram solusi untuknya.
Robot dulu punya program melakukannya untuknya, tetapi program itu hilang dan Robot tidak punya cadangan :(.
Robot runtime bukan yang terbaik, dan karakter paling sedikit Robot harus membaca dari kode sumber, paling sedikit waktu yang dihabiskan untuk memproses, dan itu berarti Kitten akan ditemukan lebih cepat!
Memori robot berisi peta lokasi dia saat ini dengan puncak mewakili Utara, bawah mewakili Selatan, kanan mewakili Timur dan kiri mewakili Barat. Robot selalu berada di ruang persegi panjang dengan ukuran yang tidak diketahui dikelilingi oleh dinding, diwakili oleh #
dalam peta radarnya. Area Robot dapat berjalan diwakili oleh sebuah ruang .
Radar robot juga memindai banyak hambatan di ruangan dan menandainya dalam berbagai huruf ASCII. Robot tidak bisa berjalan melewati rintangan itu. Radar akan menandai Kitten sebagai karakter ASCII khusus K
, sementara lokasi Robot ditandai dengan R
.
Sistem navigasi robot bekerja seperti ini: Dia dapat memahami duo arah dan jumlah unit pergerakan yang harus dia N 3
kunjungi - misalnya, berarti 'pergi ke utara 3 unit gerakan'. Peta radar robot dibuat sedemikian rupa sehingga unit gerakan adalah satu karakter ASCII. Robot hanya dapat berjalan dalam 4 arah dan tidak dapat melakukan perjalanan secara diagonal.
Tugas Anda, Kitten saver yang berani, adalah membaca peta radar Robot satu kali, dan menampilkan jumlah arah yang paling sedikit, dengan jarak perjalanan unit pergerakan yang paling sedikit. Robot dijamin memiliki setidaknya satu jalur ke Kitten.
Untuk memastikan Robot tidak membuang-buang waktu menjalankan program yang tidak berfungsi yang tidak akan membantu Robot menemukan Kucing, saya mendorong Anda, berani Penabung Kucing, untuk menggunakan hasil dari program Robot yang lalu untuk memastikan tidak ada waktu yang terbuang untuk menemukan Kucing!
Uji kasus
Input:
######################
# d 3 Kj #
# #
# R #
# q #
######################
Output:
E 13
N 2
Input:
######################
# d r 3 Kj #
# p p #
# T X #
# q s t #
# #
# R o d W #
# #
# g t U #
# #
######################
Output:
N 1
E 10
N 4
E 2
Input:
######################
# spdfmsdlwe9mw WEK3#
# we hi #
# rdf fsszr#
# sdfg gjkti #
# fc d g i #
# dfg sdd #
# g zfg #
# df df #
# xcf R#
######################
Output:
N 1
W 9
N 5
E 4
N 1
E 4
N 1
Hitungan kode termasuk input / output (yaitu program lengkap).