AcWing 1098城堡问题题解(BFS与位运算)
发布时间
阅读量:
阅读量
AcWing 1098 城堡问题
BFS的应用题,需要注意的是,因为四个方向的数字刚好代表四位二进制数,所以可以用位运算操作,判断哪一块空间某个方向是否有墙。用宽搜遍历所有空间即可得出答案
#include<bits/stdc++.h>
using namespace std;
const int N = 55;
#define x first
#define y second
typedef pair<int, int>PII;
PII q[N * N];
int n, m;
int g[N][N];
bool st[N][N];
int dx[4] = {0, -1, 0, 1};
int dy[4] = {-1, 0, 1, 0};
int ans;
int op;
int bfs(int sx, int sy){
st[sx][sy] = true;
int hh = 0, tt = 0;
q[0] = {sx, sy};
int res = 1;
全部评论 (0)
还没有任何评论哟~
