Pagini recente » Cod sursa (job #680911) | Cod sursa (job #923742) | Cod sursa (job #2865412) | Cod sursa (job #2263242) | Cod sursa (job #2252569)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("oras.in");
ofstream fout("oras.out");
int n,a[210][210];
void orasi(int str){
a[str-1][str]=1;
for(int i=1;i<=str-2;i++){
a[str][i]=1;
a[i][str-1]=1;
}
if(str<n)
orasi(str+2);
}
int main(){
fin>>n;
switch(n){
case(4):
fout<<-1;
return 0;
case(3):
fout<<"010\n001\n100";
return 0;
}
if(n%2==1){
a[1][2]=1;
a[2][3]=1;
a[3][1]=1;
int l=5;
orasi(l);
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
fout<<a[i][j];
fout<<"\n";
}
}else{
a[1][2]=1;
a[1][6]=1;
a[2][4]=1;
a[2][3]=1;
a[3][1]=1;
a[3][6]=1;
a[4][1]=1;
a[4][3]=1;
a[4][5]=1;
a[5][1]=1;
a[5][2]=1;
a[5][3]=1;
a[6][2]=1;
a[6][4]=1;
a[6][5]=1;
int l=8;
orasi(l);
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
fout<<a[i][j];
fout<<"\n";
}
}
return 0;
}