Pagini recente » Cod sursa (job #2741040) | Cod sursa (job #1974850) | Cod sursa (job #2870876) | Cod sursa (job #1374766) | Cod sursa (job #507963)
Cod sursa(job #507963)
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<deque>
#include<queue>
#include<set>
#include<vector>
using namespace std;
const int INF = 1000000005;
const int NMAX = 205;
int N, k;
int a[NMAX][NMAX];
void citi()
{
cin >> N;
}
void initializa()
{
if(N % 2 == 1)
{
a[1][2] = 1;
a[2][3] = 1;
a[3][1] = 1;
k = 3;
}
else
{
a[1][2] = 1;a[1][6] = 1;
a[2][3] = 1;a[2][5] = 1;
a[3][1] = 1;a[3][4] = 1;a[3][6] = 1;
a[4][1] = 1;a[4][2] = 1;a[4][5] = 1;
a[5][1] = 1;a[5][3] = 1;a[5][6] = 1;
a[6][2] = 1;a[6][4] = 1;
k = 6;
}
}
void construi()
{
for(int i = k + 2 ; i <= N ; i += 2)
{
for(int j = 1 ; j <= i - 2 ; j++)
a[j][i - 1] = 1;
a[i - 1][i] = 1;
for(int j = 1 ; j <= i - 2 ; j++)
a[i][j] = 1;
}
}
void scrie()
{
for(int i = 1 ; i <= N ; i++)
{
for(int j = 1 ; j <= N ; j++)
printf("%d", a[i][j]);
printf("\n");
}
}
int main()
{
freopen("oras.in", "r", stdin);
freopen("oras.out", "w", stdout);
citi();
if(N == 4)
{
printf("-1\n");
return 0;
}
initializa();
construi();
scrie();
return 0;
}