Pagini recente » Cod sursa (job #2913682) | Cod sursa (job #146889) | Cod sursa (job #620574) | Cod sursa (job #49360) | Cod sursa (job #1155268)
#include <fstream>
#define MAXN 210
using namespace std;
ifstream f("oras.in");
ofstream g("oras.out");
int n;
char ma[MAXN][MAXN];
void solve(int p);
int main()
{
int i,j;
f>>n;
for(i=1;i<=n;i++){
for(j=1;j<=n;j++)
ma[i][j]='0';
ma[i][n+1]='\n';
ma[i][n+2]='\0';}
if(n==4){
g<<"-1\n";
return 0;}
solve(n);
for(i=1;i<=n;i++)
g<<ma[i]+1;
f.close();
g.close();
return 0;
}
void solve(int p){
int i;
if(p==3){
ma[1][2]=ma[2][3]=ma[3][1]='1';
return;}
if(p==6){
ma[1][2]=ma[1][4]=ma[2][3]=ma[2][6]=ma[3][1]=ma[3][5]=ma[4][2]=ma[4][5]=ma[5][1]=ma[5][6]=ma[6][3]=ma[6][4]=ma[1][6]=ma[2][5]=ma[4][3]='1';
return;}
ma[p-1][p]='1';
for(i=1;i<=p-2;i++)
ma[i][p-1]=ma[p][i]='1';
solve(p-2);}