为啥没输出???

P1162 填涂颜色

```cpp #include<bits/stdc++.h> using namespace std; int x[4]={1,-1,0,0}; int y[4]={0,0,-1,1}; int n,a[100][100]; void bfs(int r,int m){ if(r<0||r>=n||m<0||m>=n||a[r][m]==1){ return; } a[r][m]=1;//这里 for(int i=0;i<4;i++){ bfs(r+x[i],m+y[i]); } } int main(){ cin>>n; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cin>>a[i][j]; if(a[i][j]!=1){ a[i][j]=2; } } } bfs(0,0); for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cout<<a[i][j]<<" "; } cout<<endl; } } ``` 有输出了,但错的有点离谱
by wangjiawen @ 2023-07-15 17:47:13


@[wangjiawen](/user/305069) 这样的话样例输出变成 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 2 1 1 1 2 2 2 1 1 2 2 2 2 1 1 1 1 1 1 1 不对啊
by doudou0617 @ 2023-07-15 17:53:25


就是不被包围的0也都变成1了
by doudou0617 @ 2023-07-15 17:55:26


我也写了,输出错的离谱。~~最主要的原因是我也没过qwq。~~
by wangjiawen @ 2023-07-15 20:47:04


|