迷宮最短路徑

2021-08-03 06:26:55 字數 557 閱讀 8590

#include #include using namespace std;

const int max_n=100,max_m=100;

const int inf = 100000000;

// 使用pair表示狀態時,使用typedef會更加方便一些

typedef pairp;

// 輸入

char maze[max_n][max_m + 1]; // 表示迷宮的字串的陣列

int n, m;

int sx, sy; // 起點座標

int gx, gy; // 終點座標

int d[max_n][max_m]; // 到各個位置的最短距離的陣列

// 4個方向移動的向量

int dx[4] = , dy[4] = ;

// 求從(sx, sy)到(gx, gy)的最短距離

// 如果無法到達,則是inf

int bfs() }}

return d[gx][gy];

}void solve()

迷宮最短路徑

問題描述 小a同學現在被困在了乙個迷宮裡面,他很想從迷宮中走出來,他可以向上 向下 向左 向右移動 每移動一格都需要花費1秒的時間,不能夠走到邊界之外。假設小a現在的位置在s,迷宮的出口在e,迷宮可能有多個出口。問小a想要走到迷宮出口最少需要花費多少秒?並輸出從起點到最近出口的路徑。任務要求 1 迷...

迷宮的最短路徑

雖然在網上找不到題目,但這題實在是太經典了,好多搜尋題目都是從它變形來的 從s走到g,不能走 測試資料 10 10 s g include include includeusing namespace std const int inf 100000000 define max n 105 defi...

Sicily 迷宮最短路徑

time limit 1sec memory limit 256mb description 有乙個矩形迷宮,入口和出口都確定為唯一的,且分布在矩形的不同邊上。現在讓你算出最短需要走多少步,才可以從入口走到出口。input 共n 1 行,第一行為n n 0表示輸入結束 以下n行 n列0 1矩陣,1表...