【ybt高效進階1-5-1】走迷宮
走迷宮
題目連結:ybt高效進階1-5-1
題目大意
在一個 N×N 的地圖中,一些地方可以走一些不可以走。
問你從一個地方走到另一個地方的最小步數。
思路
就是直接 bfs 搞過去。
跑圖,跑到要的點就輸出退出。
程式碼
#include<queue>
#include<cstdio>
using namespace std;
int n, a[1001][1001], sx, sy, tx, ty, ans, now, nowdis, nowx, nowy;
int dx[4] = {0, 1, 0, -1}, dy[4] = {1, 0, -1, 0};
queue <pair<int, int> > q;
bool in[1001][1001];
char c;
int get_num(int x, int y) {
return (x - 1) * n + y - 1;
}
bool ch(int x, int y) {
if (x < 1 || x > n) return 0;
if (y < 1 || y > n) return 0;
return 1;
}
void bfs() {
q.push(make_pair(get_num(sx, sy), 0));
in[sx][sy] = 1;
while (!q.empty()) {
nowx = q.front().first / n + 1;
nowy = q.front().first % n + 1;
nowdis = q.front().second;
q.pop();
for (int i = 0; i < 4; i++)
if (ch(nowx + dx[i], nowy + dy[i]) && !a[nowx + dx[i]][nowy + dy[i]] && !in[nowx + dx[i]][nowy + dy[i]]) {
in[nowx + dx[i]][nowy + dy[i]] = 1;
if (tx == nowx + dx[i] && ty == nowy + dy[i]) {
ans = nowdis + 1;
return ;
}
q.push(make_pair(get_num(nowx + dx[i], nowy + dy[i]), nowdis + 1));
}
}
}
int main() {
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
c = getchar();
while (c != '0' && c != '1') c = getchar();
a[i][j] = c - '0';
}
}
scanf("%d %d %d %d", &sx, &sy, &tx, &ty);
bfs();
printf("%d", ans);
return 0;
}
相關文章
- 走迷宮
- 藍橋杯-走迷宮(BFS)
- 自動走迷宮小遊戲~遊戲
- C語言動態走迷宮C語言
- 寒假補充專案-回溯法走迷宮
- [SDOI2012] 走迷宮 題解
- 【ybt高效進階1-4-3】【luogu P1092】蟲食算
- 解密迷宮問題:三種高效演算法Java實現,讓你輕鬆穿越未知迷宮解密演算法Java
- 509迷宮
- 尋路者華為雲:在產業AI迷宮裡走直線產業AI
- 走迷宮 -- 民間圖靈獎參賽者名單和作品圖靈
- 簡單介紹Python迷宮生成和迷宮破解演算法Python演算法
- PHP 生成迷宮路線PHP
- 【面試】如何找到迷宮出口面試
- 強化學習入門之智慧走迷宮-策略迭代演算法強化學習演算法
- 走迷宮從2011算出2012的SQL程式碼SQL
- PHP 解迷宮之 H 最小PHP
- Python迷宮生成器Python
- POJ3984-迷宮問題
- 回溯法求迷宮問題
- PARL原始碼走讀——使用策略梯度演算法求解迷宮尋寶問題原始碼梯度演算法
- 用Q-learning演算法實現自動走迷宮機器人演算法機器人
- 強化學習入門之智慧走迷宮-價值迭代演算法強化學習演算法
- 內容是超正統的迷宮RPG?PSP遊戲《迷宮旅人2》深度解析遊戲
- PHP 解迷宮之 G + H 最小PHP
- 用 Canvas + WASM 畫一個迷宮CanvasASM
- 回溯法解決迷宮問題
- 51nod 1459 迷宮遊戲遊戲
- 隨機迷宮生成演算法隨機演算法
- 如何用程式解圖片迷宮?
- 藍橋杯-迷宮(BFS+DFS)
- 創新進階5步走
- 華為優招面試題---迷宮問題面試題
- UOJ #810. 【UNR #7】位元迷宮
- 用C語言解決迷宮問題C語言
- 7-12 求迷宮最短通道(整合版)
- 我花了一夜用資料結構給女朋友寫個H5走迷宮遊戲資料結構H5遊戲
- Python 精靈模組_迷宮房間類遊戲Python遊戲