#include <stdio.h>
#define SIZE 5
int queue[SIZE];
int front;
int rear;
void queueinit()
{
front = 0;
rear= 0;
return;
}
void enqueue(int n)
{
if((rear+1)%SIZE ==front)
{
printf("queue is full\n");
return ;
}
rear = (rear+1)%SIZE;
queue[rear] = n;
return;
}
int dequeue()
{
int data;
if((front == rear))
{
printf("queue is empty\n");
return 0;
}
front = (front+1)%SIZE;
data = queue[front];
queue[front] = 0;
return data;
}
int main()
{
int i, gan, node ,j,x;
int gm, sm;
int arr[100][200], save[100]={0};
scanf("%d %d",&node,&gan);
for(i = 0; i < stop; i++)
{
scanf("%d %d",&gm,&sm);
arr[gm][sm]=1;
}
enqueue(1);
///////////////////////////
while()
{
x = dequeue();
for(i = 1 ; i<=node ; i++)
{
if(arr[x][i]==1 && save[i]==0)
{
save[i]=1;
enqueue(i);
}
}
}
for(i = 1; i <= stop; i++)
{
for(j = 1; j <= stop; j++)
{
printf("%d ",arr[i][j]);
}
printf("\n");
}
/*
for(i = 0; i < stop; i++)
{
for(j = 0; j < stop-1; j++)
enqueue(int arr[1][2]) =1;
enqueue(arr[2][1]) = 1;
}
}
*/
return 0;
}