NISHIO Hirokazu[Translate]
地図読み込み時に番兵をつける
地図データの読み込み時点で壁をつける
上下左右は for d in [-1, +1, -WIDTH, +WIDTH]: になる
一度に動きうる距離で壁の幅SENTINELを決める
スタート地点などはSENTINELだけずれる
元々1オリジンの時があるので注意


PAST5での追記
PAST5E 今まで1個読み込むだけだったが、この問題では「番兵の幅が異なる2つ」を読む必要があった
さらに片方だけ回転されるのでバグの元になった
クラスにした、回転もメソッドにしといた
グリッドグラフを構築しないことが必要だった
PAST5G 「隣接関係でグラフにするところはライブラリ化してもいいかもな」と書いていたがそもそもグラフにすることを避けるべき



以前numpyで読むものを作った
が、よく考えるとこういうデータを扱う時、だいたい地図に対して添え字でランダムアクセスする
のでnumpyで待つよりリストで持つ方が良い

"Engineer's way of creating knowledge" the English version of my book is now available on [Engineer's way of creating knowledge]

(C)NISHIO Hirokazu / Converted from [Scrapbox] at [Edit]