DALAO help!!

P1141 01迷宫

@[Aoxiangcar](/user/969320) 先说一句,要加优化不然TLE
by __zhy__ @ 2023-11-21 22:33:13


@[Aoxiangcar](/user/969320) 你bfs是不是都不会
by __zhy__ @ 2023-11-21 22:37:29


是,不熟。
by Aoxiangcar @ 2023-11-22 18:22:10


所以到底哪里错了呀
by Aoxiangcar @ 2023-11-22 21:03:39


``` #include<iostream> using namespace std; int n,m,cnt=0,fx[]={1,-1,0,0},fy[]={0,0,1,-1}; char map[1002][1002]; bool bt[1002][1002]={}; void bfs(int x,int y) { cnt++; char a; int x1=x,y2=y; for(int i=0;i<4;i++) { if(map[x][y]=='0') { a='1'; } else { a='0'; } x1+=fx[i]; y2+=fy[i]; if(x1<1||x1>n||y2<1||y2>n) { continue; } if(map[x1][y2]!=a||bt[x1][y2]==true) { continue; } bt[x1][y2]=true; bfs(x1,y2); } } int main() { cin>>n>>m; int ii,jj; for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { cin>>map[i][j]; } } for(int i=0;i<m;i++) { cin>>ii>>jj; bfs(ii,jj); cout<<cnt<<endl; cnt=0; } return 0; } ```
by Aoxiangcar @ 2023-11-22 21:29:44


|