CE又是smg……

P1746 离开中山路

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这种高频率的却直接用


上一页 |