Pagini recente » Borderou de evaluare (job #624905) | Cod sursa (job #2605716)
#include <bits/stdc++.h>
//std::ifstream fin ("input.txt");
//std::ofstream fout ("output.txt");
std::ifstream fin ("oras.in");
std::ofstream fout ("oras.out");
int main()
{
int n, i, j;
fin >> n;
int x[n][n];
memset (x, 0, sizeof x);
if (n % 4 == 0){
fout << -1;
return 0;
}
if (n % 2 == 1){
for (int k=1; k<n; k+=2){
for (i=0; i<n; i++){
j = (i + k)%n;
x[i][j] = 1;
x[j][i] = 0;
}
}
for (i=0; i<n; i++, fout << '\n')
for (j=0; j<n; j++)
fout << x[i][j];
return 0;
}
n --;
for (int k=1; k<n; k+=2){
for (i=0; i<n; i++){
j = (i + k)%n;
x[i][j] = 1;
x[j][i] = 0;
}
}
i = n;
for (j=0; j<n/2; j++){
x[i][j] = 0;
x[j][i] = 1;
}
for (j; j<n; j++)
x[i][j] = 1,
x[j][i] = 0;
n ++;
for (i=0; i<n; i++, fout << '\n')
for (j=0; j<n; j++)
fout << x[i][j];
return 0;
}