Pagini recente » Cod sursa (job #2775596) | Cod sursa (job #2484546) | Cod sursa (job #1662302) | Cod sursa (job #2457413) | Cod sursa (job #2039640)
#include <bits/stdc++.h>
const int MAXN = 200;
bool ok[MAXN + 1][MAXN + 1];
int main() {
FILE *fi, *fout;
int i, j, n;
fi = fopen("oras.in" ,"r");
fout = fopen("oras.out" ,"w");
fscanf(fi,"%d " ,&n);
if(n == 1)
fprintf(fout,"1");
else if(n == 2 || n == 4)
fprintf(fout,"-1");
else {
if(n % 2 == 1) {
ok[1][2] = ok[2][3] = ok[3][1] = 1;
for(i = 5; i <= n; i += 2) {
ok[i][i - 1] = 1;
for(j = i - 2; j >= 1; j--) {
ok[i - 1][j] = 1;
ok[j][i] = 1;
}
}
}
else {
ok[1][2] = ok[1][6] = ok[2][3] = ok[2][4] = ok[3][1] = ok[3][6] = ok[4][1] = ok[4][3] = ok[4][5] = ok[5][1] = ok[5][2] = ok[5][3] = ok[6][2] = ok[6][4] = ok[6][5] = 1;
for(i = 8; i <= n; i += 2) {
ok[i][i - 1] = 1;
for(j = i - 2; j >= 1; j--) {
ok[i - 1][j] = 1;
ok[j][i] = 1;
}
}
}
for(i = 1; i <= n; i++) {
for(j = 1; j <= n; j++)
fprintf(fout,"%d" ,ok[i][j]);
fprintf(fout,"\n");
}
}
fclose(fi);
fclose(fout);
return 0;
}