Pagini recente » Cod sursa (job #2961588) | Cod sursa (job #3000601) | Cod sursa (job #2806825) | Cod sursa (job #3250989) | Cod sursa (job #1521198)
#include <cstdio>
using namespace std;
const int DIM = 256;
int A[DIM][DIM], N;
void equal3 ()
{
A[1][2] = 1;
A[2][3] = 1;
A[3][1] = 1;
return;
}
void equal6 ()
{
A[1][2] = 1; A[1][4] = 1; A[1][6] = 1;
A[2][3] = 1; A[2][5] = 1; A[2][6] = 1;
A[3][1] = 1; A[3][5] = 1; A[4][2] = 1;
A[4][3] = 1; A[4][5] = 1; A[5][1] = 1;
A[5][6] = 1; A[6][3] = 1; A[6][4] = 1;
return;
}
int main ()
{
freopen ("oras.in" ,"r", stdin );
freopen ("oras.out","w", stdout);
scanf ("%d", &N);
switch (N)
{
case 3:{
equal3();
break;
}
case 4:{
printf ("-1\n");
break;
}
case 6:{
equal6 ();
break;
}
default:{
if (N % 2 == 1)
equal3 ();
else
equal6 ();
for (int i = (N % 2) ? 5 : 6; i <= N; i += 2)
{
A[i-1][i] = 1;
for (int j = 1; j <= i - 2; j ++)
A[j][i-1] = 1;
for (int j = 1; j <= i - 2; j ++)
A[i][j] = 1;
}
}
}
if (N != 4)
{
for (int i = 1; i <= N; i ++)
{
for (int j = 1; j <= N; j ++)
printf ("%d", A[i][j]);
printf ("\n");
}
}
fclose (stdin );
fclose (stdout);
return 0;
}