HEXマップ
形としてカッコイイのだけどアルゴリズムを作る際にバグがでやすい。
列ごとに変えないといけないのが問題点。線形サーチがしづらい。
誰かが先に気がついていそうだけど、
簡単にする方法のご紹介。
上の画面の場合
データ入力時にスペースを追加して偶数列に1つ前後#を追加する
変形させたものがコチラ
探索はx,y座標系なら任意の位置から、
(-2, 0) (2, 0) (-1, -1) (1, -1) (-1, 1) (1, 1)と同じにできる。
一次元化していてPからなら、-19, -17, -2, 2, 17, 19。
このボードゲームに限っての話
座標A1 B1の(x, y)と変換対応は相互の辞書を最初に作っておけば簡単。