Pagini recente » Cod sursa (job #1681621) | Cod sursa (job #606538) | Cod sursa (job #1084633) | Cod sursa (job #1193072) | Cod sursa (job #610934)
Cod sursa(job #610934)
#include <stdio.h>
#include <string.h>
#define NMax 210
const char IN[]="oras.in",OUT[]="oras.out";
const char mat[10][10]= {
"011100",
"001110",
"000101",
"000011",
"101001",
"110000"
};
const char mat2[5][5]={
"010",
"001",
"100"
};
int N;
char Sol[NMax][NMax];
int main()
{
int i,j,f;
freopen(IN,"r",stdin);
scanf("%d",&N);
fclose(stdin);
memset(Sol,'0',sizeof(Sol));
for (i=0;i<N;++i) Sol[i][N]=0;
if (N!=4 && N&1)
for (i=0;i<3;++i) memcpy(Sol[i],mat2[i],3),f=3;
else if (N!=4)
for (i=0;i<6;++i) memcpy(Sol[i],mat[i],6),f=6;
for (i=f+1;i<N;i+=2)
for (j=0,Sol[i-1][i]='1';j<i-1;++j) Sol[j][i-1]=Sol[i][j]='1';
freopen(OUT,"w",stdout);
if (N==4) printf("-1");
else for (i=0;i<N;++i)printf("%s\n",Sol[i]);
return 0;
}