/*輸入起點終點座標,輸入迷宮,輸出最短路
對於每種情況到達的下一步,又有n種情況可以走,
*/#include #include #include #define n 100
using namespace std;
int map[n][n] = ,vis[n][n];
int endx, endy, m, n;
int min = 9999;
int dx[4] = ;
int dy[4] = ;
void dfs(int x, int y, int step)
for (int i = 0; i <= 3; i++) }
return;
}int main()
} scanf("%d%d%d%d", &startx, &starty, &endx, &endy);
vis[startx][starty] = 1;
dfs(startx,starty,0);//深搜需要傳遞的量有當前位置,以及對應已經走得步數
printf("%d\n", min);
return 0;
}
迷宮問題dfs
迷宮問題 棧作為深度優先遍歷 dfs 採用的搜尋方法的特點是盡可能先對縱深方向進行搜尋 可以最快的找到解 include define m 8 define n 8 define maxsize 1000 typedef struct box typedef struct sttype 迷宮問題常用...
迷宮問題dfs
j.迷宮問題 migong problem 1737 discussion description 設有乙個n n 2 n 10 方格的迷宮,入口和出口分別在左上角和右上角。迷宮格仔中分別放0和1,0表示可通,1表示不能,入口和出口處肯定是0。迷宮走的規則如下所示 即從某點開始,有八個方向可走,前進...
迷宮問題 DFS
給定乙個n m方格的迷宮,迷宮裡有t處障礙,障礙處不可通過。給定起點座標和終點座標,問 每個方格最多經過1次,有多少種從起點座標到終點座標的方案。在迷宮中移動有上下左右四種方式,每次只能移動乙個方格。資料保證起點上沒有障礙。思路 經典搜尋題,這篇我用深度優先搜尋來解題,首先我們定義兩個陣列,乙個用來...