有乙個n*m的棋盤(1一行四個資料,棋盤的大小和馬的座標
乙個n*m的矩陣,代表馬到達某個點最少要走幾步(左對齊,寬5格,不能到達則輸出-1)
3 3 1 1
0 3 2
3 -1 1
2 1 4
#include
using
namespace std;
#define pi acos(-1)
#define mod 1000000007
#define ll long long
#define ull unsigned long long
#define mem(a) memset(a,0,sizeof(a))
#define cio ios::sync_with_stdio(false);
int next[8]
[2]=
,,,,
,,,}
;int s[
410]
[410];
int vis[
410]
[410];
struct node
q[200010];
int n, m;
int sx, sy;
void
bfs(
)//廣搜
} head++;}
}int
main()
}for
(int i =
1; i <= n; i++
) cout << endl;
}return0;
}
洛谷 P1443 馬的遍歷(bfs)
題意 乙個n m的棋盤,給你馬的起始座標,輸出到達棋盤上每一點的最少步數,無法到達則輸出 1。思路 bfs即可。具體解釋見 include include include include include using namespace std int n,m,x,y 棋盤和馬的初始座標 int qu...
洛谷 P1443 馬的遍歷 bfs
問題描述 有乙個nm的棋盤 1m的矩陣,代表馬到達某個點最少要走幾步 左對齊,寬5格,不能到達則輸出 1 輸入 3 3 1 1 輸出 0 3 2 3 1 1 2 1 4 本蒟蒻的第一篇題解,也是研究了半天才搞明白。話不多說直接給思路。本題給出棋盤大小和初始位置求到每個點最少要走幾步。設定乙個佇列陣列...
洛谷 P1443 馬的遍歷 bfs
略有收穫的bfs,使用了try enqueue函式使得加入佇列非常方便。效能理論上是一樣的因為是inline?還有就是左對齊是使用 4d,相對於右對齊的 4d,還有右對齊前導零的 04d,自己試一下唄。includeusing namespace std define ll long long in...