Tugas Anda adalah menulis sebuah program yang menemukan jumlah gerakan optimal yang diperlukan untuk mendapatkan dari sudut kiri bawah persegi panjang ke sudut kanan atas yang berseberangan.
Program Anda akan menerima input sebagai pasangan yang dipesan (width, height)
. Ini akan menjadi dimensi persegi panjang yang akan Anda kerjakan. Program Anda akan membuat ASCII-art dari solusi (gunakan .
untuk kotak kosong dan #
untuk bagian dari solusi, X
untuk memulai kotak) dan menghitung jumlah gerakan yang diperlukan untuk mencapai titik akhir. Pergerakan diagonal tidak diizinkan. Jika ada beberapa solusi, pilih satu untuk di-output.
Program terpendek dalam byte menang.
Contoh
Memasukkan: (4, 5)
Keluaran:
..##
..#.
.##.
.#..
X#..
Pindahkan hitungan: 7
#
karena tidak masuk akal untuk pergi ke kiri atau ke bawah.
#
"solusi optimal" (yang merupakan solusi yang tidak pernah bergerak ke kiri atau ke bawah) juga?