令(x , y , r) 代表当前站在位置x,y并且当前还剩下r个炸弹的最短步数,直接进行bfs即可。
具体细节见代码以及代码注释
小红现在在一个大小为N×M的网格中(用B代表小红的位置),现在小红打算到达网格中的*点,但是网格有些单元格中有许多围墙使小红无法通过。
庆幸的是,小红有3个炸弹可以将墙炸毁以至于他可以通过此处,小红每一移动只能移动到没有围墙的单元格中且只能移动至相邻的格子中,每一移动只能移动一步,使用炸弹时也算作移动一步。
现在小红想知道他最少移动多少步才能到达*点。