Pagini recente » Cod sursa (job #123516) | Cod sursa (job #295670) | Cod sursa (job #2571649) | Cod sursa (job #1758963) | Cod sursa (job #133863)
Cod sursa(job #133863)
#include <cstdio>
const int maxn = 202;
FILE *in = fopen("oras.in","r"), *out = fopen("oras.out","w");
int n;
int a[maxn][maxn];
void go(int k)
{
if ( k <= 1 )
return;
go(k-2);
a[k-1][k] = 1;
for ( int i = 1; i <= k - 2; ++i )
a[i][k-1] = 1, a[k][i] = 1;
}
int main()
{
fscanf(in, "%d", &n);
if ( n == 4 )
{
fprintf(out, "%d\n", -1);
return 0;
}
if ( n % 2 == 0 )
{
go(n - 3);
a[n-1][n] = 1;
a[n-2][n] = 1;
a[n-2][n-1] = 1;
for ( int i = 1; i <= n - 3; ++i )
a[i][n-2] = 1, a[n][i] = 1;
for ( int i = 1; i <= n - 4; ++i )
a[i][n-1] = 1;
a[n-1][n-3] = 1;
}
else
go(n);
for ( int i = 1; i <= n; ++i )
{
for ( int j = 1; j <= n; ++j )
fprintf(out, "%d", a[i][j]);
fprintf(out, "\n");
}
return 0;
}