問題WxHの平面があり、各マスに1から9のどれかが割り振られている。この平面上では上下左右の方向に移動することができるが、移動後の直近3回のマスの値が門松列の条件(すべての値が異なり、2番めに小さい数が2番めに位置しない)を満たしている場合のみにしか移動は許されない。この条件のもとで、左上からスタートして右下に移動するの必要な最小ステップはいくらか。辿りつけない場合は-1を出力する。次に行ける場所は、今の座標と前の場所の値によって決まっていく。BFSなので一度コスト表に値が入れば、そこを通る場合はそれ以上計算しなくて済む。BFSなのだろうとはわかったが、次に行ける場所は今の座標と前の場所の値によって決まっていくのだから、それに対応したコスト表を持てばいいことに気づけなかった。へんに考えずに状態に対応したコスト表を持てばいい、のかな。読者になるリンクTopCoderCodeforcestwitterGitHubQiitaはてなブログをはじめよう!roiti46さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。