ゲームプログラミング相談室
■ このスレッドは過去ログ倉庫に格納されています
0503416(HSP) ◆HoSW/FCI
02/05/24 03:53ID:btbuBamk0が通路で1が壁だとすると、まず、n×mの広さを1で全部埋めます。一番外側だけ0にすると範囲チェックしなくて済むから楽かも。
で、親座標と子座標を用意して、親は左上から右下まで2ステップずつ捜査させます。子は親からランダムに4方向を選んで移動するわけですが、これも2ステップずつ移動させます。子の移動先が壁だったら掘って、またランダムに移動。
移動予定先が全部通路で選択肢が無い場合は、子の移動は終了して、親を1つ進めます。
そしてまたその親座標から子を移動させて動けなくなるまで掘っていく。これを最後まで繰り返すと解が1つだけの迷路ができます。
同様の方法で2つの接しない壁を作っていくという方法もありますが、上記のほうがシンプルかも。
■ このスレッドは過去ログ倉庫に格納されています