N88-BASICでスライドパズル (3回目)
2022/2/26(土) N88-BASICでスライドパズル (3回目) Sliding puzzle(8)の解答探索 123 123 123 456 → 45 → 456 78 786 78 スペースの場所へ 1~8を動かしてから、 元に戻すパズルです。 上の例では 1回しか動かしていないので すぐ元に戻せますが、たくさん動かせば 元に戻すのが難しくなります。 動かしたい方向のカーソルキーで移動します。 (移動方向表示は30回またはEnterで改行) sキーで30回適当に移動します。 aキーで解答探索します。(qキーで途中中断) スペースキーで終了です。 解答探索 (1) (2) (3) xxx xxx xxx 盤面 xx2 → xxx , xx x1 x 1 xx2 方法 "" "→" "↓" (1)からは(2)と(3)の動かし方があります PUZZNは(1),(2),(3)の盤面を記憶する最大数です MOVENは(2),(3)へ至る方法を記憶する最大値です (2),(3)について(1)と同様に繰り返し、 初めに見つけた答えを表示しています。 深さ探索 (スタックの先入れ後出し)ではなく 幅探索 (ストリームの先入れ先出し)で検索しています ので初めに見つけた答えは最短経...