哪儿错了?求助大佬!
查看原帖
哪儿错了?求助大佬!
800751
acmwriter楼主2022/12/25 23:13
#include<bits/stdc++.h>
using namespace std;
int a[100][100],b[100][100];
int n;
int kx[4]={0,0,1,-1};
int ky[4]={1,-1,0,0};
void dfs(int x,int y)
{
    int b,c;
    a[x][y]=0;
    for(int i=1;i<=4;i++)
    {
        b=x+kx[i];
        c=y+ky[i];
        if(b>=1&&b<=n&&c>=1&&c<=n&&a[b][c]==1)
        dfs(b,c);
    }
}
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
    {
       for(int j=1;j<=n;j++)
       {
          cin>>b[i][j];
          if(b[i][j]==0)a[i][j]=1;
          else a[i][j]=2;
       }
    }
    dfs(0,0);
    for(int i=1;i<=n;i++)
    {
       for(int j=1;j<=n;j++)
       {
           if(a[i][j]==0)cout<<2<<' ';
           else cout<<b[i][j]<<' ';
       }
       cout<<'\n';
    }
}
2022/12/25 23:13
加载中...