題目描述
有乙個n*m的棋盤(1
//這是乙個簡單的dfs做的
#include
#include//memset要用到
#include
#include//setw要用到
using namespace std;
bool vis[500][500]; //是否走過
intmap[500][500]; //存步數
int n,m,x,y;
int dir[8][2]=,,,,,,,};//用陣列把方向存起來
void dfs(int
x,int
y,int step)//別的大牛都是對每乙個點進行dfs 沒有終止條件
}int main()
//這個是模擬佇列做的
#include
#include
#include
using namespace std;
bool vis[500][500]; //是否走過
intmap[500][500]; //存步數
intq[200000][4];
int n,m;
intx,y;
int dir[8][2]=,,,,,,,};
//走向
int main()
}front++;
}for(int i=1;i<=n;i++)
/* 擴充知識點 可用佇列結構體做 練習可看另一題的這種做法 還使用了hash
#include
struct acttemp;
queueint> > q; //x
y座標 和步數
q.push(make_pair(temp,0)); //放進乙個空的
pairint> now=q.front(); //建立乙個pair型的變數 方便操作
temp=now.first; //將佇列首元素給 now
cout
luogu P1443馬的遍歷(BFS)
有乙個n m的棋盤 1輸入格式 一行四個資料,棋盤的大小和馬的座標 輸出格式 乙個n m的矩陣,代表馬到達某個點最少要走幾步 左對齊,寬5格,不能到達則輸出 1 題解 其中有好多重複標記的地方,請見諒 includeusing namespace std queue qx 橫座標佇列 queue q...
lg1443馬的遍歷
題目描述 有乙個n m的棋盤 在某個點上有乙個馬,要求你計算出馬到達棋盤上任意乙個點最少要走幾步 輸入輸出格式 輸入格式 一行四個資料,棋盤的大小和馬的座標 輸出格式 乙個n m的矩陣,代表馬到達某個點最少要走幾步 左對齊,寬5格,不能到達則輸出 1 輸入輸出樣例 輸入樣例 1 複製 3 3 1 1...
洛谷 1443 馬的遍歷
標籤 相似題目 題目有乙個n m的棋盤 1 n,m 400 在某個點上有乙個馬,要求你計算出馬到達棋盤上任意乙個點的最小步數 馬走 日 字 輸入一行四個資料,分別代表棋盤的大小和馬的座標。輸出乙個n m的矩陣,代表馬到達某個點最少要走幾步 左對齊,寬5格,不能到達則輸出 1 輸入樣例3 3 1 1 ...