迷宮問題
time limit:1000ms
memory limit:65536k
total submissions:57486
accepted:30481
description
定義乙個二維陣列:
int maze[5][5] = ;
它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。
input
乙個5 × 5的二維陣列,表示乙個迷宮。資料保證有唯一解。
output
左上角到右下角的最短路徑,格式如樣例所示。
sample input
0 1 0 0 0sample output0 1 0 1 0
0 0 0 0 0
0 1 1 1 0
0 0 0 1 0
(0, 0)(1, 0)
(2, 0)
(2, 1)
(2, 2)
(2, 3)
(2, 4)
(3, 4)
(4, 4)
1 #include 2 #include 3 #include 4 #include 5using
namespace
std;
6#define scanf scanf_s78
int map[10][10];9
int dir[4][2] = , , , };
1011
struct
node ;
1415
bool vis[10][10
];16
17bool
check(node nxt)
21else
return
false;22
}23 node pre[10][10
];24
25void
bfs()
37for (int i = 0; i < 4; i++) 46}
4748}49
}5051void
print(node a)
56print(pre[a.x][a.y]);
57 printf("
(%d, %d)\n
", a.x - 1, a.y - 1
);58}59
60int
main()
POJ 3984 迷宮問題 迷宮最短路徑 bfs
題目鏈結 include include include using namespace std const int maxl 10 矩陣最大寬度 char maze maxl maxl 迷宮 bool vis maxl maxl 訪問標記 int n,m 迷宮的長和寬 int dirx 4 int...
poj3984 迷宮問題 輸出最短路徑BF
description 定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。input 乙個5 5的二維陣列,表示乙個迷宮。資料保證有唯一解。output 左上角到右下角的最短路...
poj3984迷宮問題 廣搜 最短路徑 模擬佇列
定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。input 乙個5 5的二維陣列,表示乙個迷宮。資料保證有唯一解。output 左上角到右下角的最短路徑,格式如樣例所示。sa...