Helikopter mulai dari sudut kiri atas sedang turun (dalam ruang 2D, untuk tujuan pertanyaan ini) menuju tanah. Ini memiliki mode autopilot dan mode manual.
Mode autopilot berlaku sebagai berikut:
- Jika ruang langsung di bawah ini gratis, turunlah ke sana.
- Kalau tidak, gerakkan langkah ke kiri atau kanan, sepenuhnya secara acak. (Ini dapat memindahkan beberapa langkah dengan cara ini.)
Dan itu terus mengulangi kedua langkah ini sampai menyentuh tanah. Mode manual lebih pintar dan akan menemukan jalur optimal ke tanah, bahkan jika ini membutuhkan gerakan ke atas, atau beberapa manuver terampil.
Tugas Anda adalah menentukan apakah
- Autopilot akan lolos dalam skenario yang diberikan,
- Autopilot mungkin gagal dalam skenario yang diberikan,
- Autopilot akan gagal, tetapi mode manual akan berlalu, atau
- Kedua mode akan gagal (tidak ada jalur yang valid ke tanah).
Memasukkan
- Skenario yang diberikan sebagai larik non-kosong 1d atau 2d, menggunakan dua karakter yang berbeda untuk mewakili ruang bebas dan diblokir. Tanda baca opsional.
- Opsional: dimensi array
Keluaran
Satu dari empat karakter yang telah ditentukan yang menunjukkan kasus mana yang telah terjadi.
Contoh data
Menggunakan 0 (kosong) dan 1 (diblokir) dalam input, 1 2 3 4 dalam output (seperti bernomor di atas)
0 0 0 0
0 1 0 0
0 0 0 1
1 1 0 0
Keluaran: 1
0 0 1 0
1 0 0 1
0 0 0 0
0 1 1 0
0 0 0 1
Output: 2
(Helikopter akan menemukan 1 di baris keempat, dan ada kemungkinan ia akan menjebak dirinya sendiri di akhir baris 5, jika pada mode autopilot)
0 0 0 1 0
0 1 1 0 0
0 1 0 0 0
0 0 0 1 0
1 1 1 1 0
Output: 3
(Ini membutuhkan bergerak ke atas, sehingga autopilot gagal)
1 0 0
0 0 0
Keluaran: 4
0 0 0 0 1
1 1 1 0 0
1 0 0 1 0
0 1 0 0 0
0 0 1 1 1
Keluaran: 4
sumber
Jawaban:
Ruby, 259
Saya bersenang-senang dengan ini. Terima kasih! tantangan kisi cenderung menyenangkan dengan tantangan yang menarik. Ini mengasumsikan bahwa "karakter" dalam pertanyaan dapat berupa bilangan bulat.
Saya pikir poin utama peningkatan di sini adalah:
r
Tidak digabungkan (sedikit kedaluwarsa, tetapi sangat dekat):
sumber