Official
E - Stronger Takahashi Editorial by kyopro_friends
この問題は01BFSで解くことができます。
必要になった時点で初めてパンチを繰り出すことにすると、塀を破壊する \(2 \times 2\) 領域は、高橋君が今いるマスに隣接しているとしてよいです。
高橋君が下図の \(T\) にいるとき、パンチを \(1\) 回繰り出すことで、区画の元の状態によらず *
のいずれかに移動することができます。
.***. ***** **T** ***** .***.
したがって、徒歩による上下左右への移動をコスト \(0\) 、パンチを繰り出した直後の *
のいずれかへの移動をコスト \(1\) として、01BFSによりこの問題を解くことができました。計算量は \(O(HW)\) です。
posted:
last update: