Cod sursa(job #1836671)

Utilizator patcasrarespatcas rares danut patcasrares Data 28 decembrie 2016 15:58:43
Problema Oras Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include<fstream>
using namespace std;
ifstream fi("oras.in");
ofstream fo("oras.out");
int n,A[201][201],i,j,k;
int main()
{
	fi>>n;
	if(n==4||n==2)
	{
		fo<<-1;
		fi.close();
		fo.close();
		return 0;
	}
	if(n%2==1)
	{
		A[1][2]=1;
		A[2][3]=1;
		A[3][1]=1;
		k=3;
		while(k<n)
		{
			for(i=1;i<=k;i++)
				A[i][k+1]=1;
			for(i=1;i<=k;i++)
				A[k+2][i]=1;
			A[k+1][k+2]=1;
			k=k+2;
		}
	}
	else
	{
		A[1][2]=A[1][3]=A[1][4]=1;
		A[2][3]=A[2][4]=A[2][5]=1;
		A[3][4]=A[3][6]=1;
		A[4][5]=A[4][6]=1;
		A[5][6]=A[5][1]=A[5][3]=1;
		A[6][1]=A[6][2]=1;
		k=6;
		while(k<n)
		{
			for(i=1;i<=k;i++)
				A[i][k+1]=1;
			for(i=1;i<=k;i++)
				A[k+2][i]=1;
			A[k+1][k+2]=1;
			k=k+2;
		}
	}
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n;j++)
			fo<<A[i][j];
		fo<<'\n';
	}
	fi.close();
	fo.close();
	return 0;
}