#include<stdio.h>
int map[4][4]={0,0,0,1,
0,0,1,1,
0,0,1,0,
0,1,0,0};
int mx[4]={0,0,1,-1};
int my[4]={1,-1,0,0};
typedef struct node
{
int x;
int y;}node;
node dui[1000];
int tou=0;
int wei=1;
void change()
{
int nx;
int ny;
dui[tou].x=0;
dui[tou].y=3;
map[0][3]=2;
while(tou<wei)
{
for(int i=0;i<4;i++)
{
nx=dui[tou].x +mx[i];
ny=dui[tou].y +my[i];
if(nx>=0&&nx<4&&ny>=0&&ny<4&&map[nx][ny]==1)
{ map[nx][ny]=2;
dui[wei].x =nx;
dui[wei].y =ny;
wei++;
}
}
tou++;
}
}
int main()
{ change();
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
printf("%d",map[i][j]);
}
printf("\n");
}
return 0;
}