BlachSnake @ 2021-02-26 20:27:25
#include<bits/stdc++.h>
using namespace std;
const int mx[4]={1,0,-1,0},my[4]={0,1,0,-1};
struct node{
int x,y,t;
};
char m[1024][1024];
int n,x1,y1,x2,y2;
bool b[1024][1024];
queue<node>q;
int BFS(){
q.push((node){x1,y1,0});
node x,y;
while(!q.empty()){
x=q.front();
y.t=x.t+1;
q.pop();
for(int i=0;i<4;i++){
y.x=x.x+mx[i];
y.y=x.y+my[i];
if(y.x>0&&y.y>0&&y.x<=n&&y.y<=n&&b[y.x][y.y]&&m[y.x][y.y]=='0'){
if(y.x==x2&&y.y==y2)return y.t;
q.push(y);
b[y.x][y.y]=0;
}
}
}
return -1;
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
memset(m,'1',sizeof(m));
memset(b,1,sizeof(b));
cin>>n;
for(int i=1;i<=n;i++)cin>>m[i]+1;
cin>>x1>>y1>>x2>>y2;
cout<<BFS()<<endl;
return 0;
}
RT
by qqqqq111 @ 2021-02-26 21:11:05
@abuyao 行行行大佬的世界我不懂再见(飞逃
by qqqqq111 @ 2021-02-26 21:11:27
@钻剑君 不是一个学校
by MuYC @ 2021-02-26 21:13:10
@abuyao 大佬教教我怎么DFS吧,,不会
by AMIRIOX無暝 @ 2021-02-26 21:13:27
感觉标准库很奇怪
一些生辟 基本用不上的标识符加上__
防止冲突,y1
index
这种高频率的却直接用