#include<iostream>
#include<cstdio>
using namespace std;
int a[50][50];
int b[50][50];
int n,h,t=1;
int q1[2000];
int q2[2000];
int f[4][2]={{1,0},{-1,0},{0,1},{0,-1}};
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
cin>>a[i][j];
b[0][0]=1;
while(h<=t)
{
h++;
int x=q1[h],y=q2[h];
for(int i=0;i<4;i++)
{
int xx=x+f[i][0];
int yy=y+f[i][1];
if(xx<0||yy<0||xx>(n+1)||yy>(n+1)||a[xx][yy]||b[xx][yy]) continue;
t++;q1[t]=xx;q2[t]=yy;b[xx][yy]=1;
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
if(a[i][j]==1) printf("1 ");
else
{
if(b[i][j]) printf("0 ");
else printf("2 ");
}
}
printf("\n");
}
return 0;
}
P1162 填涂颜色
最新推荐文章于 2025-04-03 23:17:47 发布