8 Puzzle adalah varian yang lebih kecil dari 15Puzzle (atau teka-teki Sliding ). Anda memiliki 3x3
kisi yang diisi dengan angka 0-8 (0 menunjukkan ubin kosong) yang disusun dalam urutan acak. Tugas Anda adalah memasukkan kisi 3x3 dan menunjukkan solusi terpendek (gerakan minimum) untuk mencapai status sasaran. Tampilkan setiap boardstate termasuk status pertama dalam output.
Mungkin ada beberapa solusi optimal, Anda hanya perlu mencetaknya.
Input: (contoh kecil)
1 2 0
4 5 3
7 8 6
Keluaran:
2 <- denotes minimum number of moves required
1 2 0
4 5 3
7 8 6
1 2 3
4 5 0
7 8 6
1 2 3
4 5 6
7 8 0 <- goal state
Jika puzzle tidak dapat dipecahkan, cetak saja -1
(menunjukkan tidak dapat dipecahkan)
Sunting : Batas waktu: <30 detik.
code-golf
sliding-puzzle
st0le
sumber
sumber
grid which is filled with numbers from 0-9
menjadigrid which is filled with numbers from 0-8
?Jawaban:
Python, 418 karakter
Kode tersebut secara lengkap menyebutkan semua posisi dan membuat peta kedalamannya (D), dan posisi yang lebih dekat untuk dipecahkan (E). Kemudian mencari status tujuan untuk mendapatkan output.
sumber
' '*3
triknya.