Cod sursa(job #1228165)

Utilizator SebiSebiPirtoaca George Sebastian SebiSebi Data 12 septembrie 2014 21:53:18
Problema Oras Scor 65
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<iostream>
#include<fstream>
using namespace std;

#define NMAX 202

char c[NMAX],a[NMAX][NMAX];

int main ()
{
	int i,n,j;
	ifstream f("oras.in");
	ofstream g("oras.out");
	f>>n;
	f.close();
	if(n==4) {
		g<<"-1";
		g.close();
		return 0;
	}
	if(n%2==0) {
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				a[i][j]='0';
		a[1][3]=a[1][5]=a[1][6]='1';
		a[2][1]=a[2][4]='1';
		a[3][2]=a[3][5]='1';
		a[4][1]=a[4][3]=a[4][6]='1';
		a[5][2]=a[5][4]=a[5][6]='1';
		a[6][2]=a[6][3]='1';
		for(i=8;i<=n;i++) {
			for(j=1;j<=i-2;j++) {
				a[j][i-1]='1';
				a[i][j]='1';
			}
			a[i-1][i]='1';
		}
		for(i=1;i<=n;i++)
			g<<a[i]+1<<'\n';
		g.close();
		return 0;
	}
	for(i=1;i<=n;i++)
		c[i]='0';
	for(i=1;i<=n;i++) {
		for(j=1;j<=n;j++)
			c[j]='0';
		for(j=i+2;j<=n;j=j+2)
			c[j]='1';
		for(j=1+(i%2);j<i;j=j+2)
			c[j]='1';
		g<<(c+1)<<'\n';
	}
	g.close();
	return 0;
}