題目鏈結
題意:
給你乙個5*5的迷宮,0代表通路,1代表牆,找到從迷宮左上角到達右下角的最短路徑,並輸出路徑。題解:
先進行一遍bfs,得到vis陣列,表示到該位置最少需要多少時間,然後從(4,4)位置倒著查路徑,ac**:查到符合的就直接break,防止重複
#include
#include
#include
#include
#include
#include
using namespace std;
typedef
long
long ll;
const
int maxn=7;
struct node;}
;int mp[maxn]
[maxn]
;int vis[maxn]
[maxn]
;int dis[4]
[2]=
;void
bfs()}
}}intmain()
}if(nw.x==
0&&nw.y==0)
break;}
while
(!ds.
empty()
)return0;
}
POJ 3984 迷宮問題 (路徑記錄)
k 迷宮問題 crawling in process.crawling failed time limit 1000msmemory limit 65536kb64bit io format i64d i64u submit status description 定義乙個二維陣列 int maze ...
poj 3984 迷宮問題(bfs, 記錄路徑)
迷宮問題 time limit 1000ms memory limit 65536k total submissions 16156 accepted 9636 description 定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走...
poj 3984 迷宮問題 BFS 路徑記錄
include include include include includeusing namespace std struct node node map 10 10 bool vis 10 10 int dirx 4 int diry 4 int main queueq map 1 1 fx ...