定義乙個二維陣列表示迷宮, 0為通道, 1為牆壁
左上(0,0)為迷宮入口, 右下角(4,4)為出口
求最短路的座標( 輸入保證有且只有乙個最優解 )
bfs
二維陣列maze存的是迷宮圖
二維陣列vis用於標記該位置是否曾經走過(如果走過, 那麼第一次踩到該位置的走法是最短路)
陣列pre存放的是改點前驅
#include
#include
#include
using
namespace
std;
const
int maxn = 100 + 10;
int maze[6][6], vis[6][6], pre[maxn];
int turn[4][2] = ; //搜尋的四個方向
struct pointque[maxn];
void print( int a )
bool cango( int x, int y )
void bfs()
for( int i = 0; i < 4; i++ )
}head++; //出隊
}return;
}int main()
POJ3984 迷宮問題
題目 迷宮問題 time limit 1000ms memory limit 65536k total submissions 3183 accepted 1861 description 定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎...
POJ 3984 迷宮問題
一道比較簡單的bfs題 include include include include define max 6 using namespace std int map max max px max max py max max int movex 4 movey 4 bool vis max ma...
POJ 3984 迷宮問題
迷宮問題 time limit 1000ms memory limit 65536k total submissions 7047 accepted 4123 description 定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,...