給定乙個大小為n*m的迷宮,由通道(『.』)和牆壁(『#』)組成,其中通道s表示起點,通道g表示終點,每一步移動可以達到上下左右中不是牆壁的位置。試求出起點到終點的最小步數。(本題假定迷宮是有解的)(n,m<=100)
樣例輸入:
樣例輸出:
#include
#include
#include
using
namespace
std;
const
int inf = 100000;
const
int max_n = 100 ;
const
int max_m = 100;
typedef pair p;
char maze[max_n][max_m+1];
int n,m;
int sx , sy ;
int gx ,gy ;
int d[max_n][max_m];
int dx[4] = ;
int dy[4] =;
void bfs()}}
int main()
if (maze[i][j] == 'g')
}bfs();
cout
0;}
BFS 迷宮的最短路徑
迷宮的最短路徑 給定乙個大小為n m的迷宮。迷宮由通道和牆壁組成,每一步可以 向鄰接的上下左右四個方位的通道移動,請求出從起點到終點所需的最小不熟。此題假設一定能從起點到終點 限制條件 n,m 100 樣例 輸入 10 10 s g 輸出 22 include include includeusin...
BFS 迷宮的最短路徑
迷宮的最短路徑 給定乙個大小為n m 的迷宮。迷宮由通道和牆壁組成,每一步可以向鄰接的上下左右四格的通道移動。請求出從起點到終點所需的最小步數。請注意,本題假定從起點一定可以移動到終點 限制條件 n m 100 s g 分別代表 牆壁 通道 起點和終點。sample input 10 10 s g ...
迷宮的最短路徑 BFS
迷宮的最短路徑時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 給定乙個大小為n m 的迷宮。迷宮由通道和牆壁組成,每一步可以向鄰接的上下左右四格的通道移動。請求出從起點到終點所需的最小步數。請注意,本題假定從起點一定可以移動到終點 限制條件 n m 100 s g 分別代表 ...