洛谷 P1443 馬的遍歷(BFS)

2021-10-06 02:36:24 字數 835 閱讀 1456

有乙個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...