Cod sursa(job #1885202)

Utilizator KronSabau Valeriu Kron Data 19 februarie 2017 18:42:44
Problema Oras Scor 55
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.22 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("oras.in");
ofstream g("oras.out");

int n, a[210][210];
int main()
{
    f >> n;
    if(n==4)
        g << -1;
    else
    {
        if(n%2)
        {
            a[1][2]=a[2][3]=a[3][1]=1;
            for(int i=4;i<=n;i+=2)
            {
                a[i][i+1]=1;
                for(int j=1;j<=i-1;j++)
                {
                    a[j][i]=1;
                    a[i+1][j]=1;
                }
            }
        }

        if(n%2==0)
        {
            a[1][2]=a[2][3]=a[3][1]=1;
            a[2][4]=a[4][5]=a[5][2]=1;
            a[1][4]=a[5][3]=1;
            a[6][2]=a[6][1]=a[3][6]=1;
            a[6][4]=a[6][5]=1;
            a[4][3]=1;
            a[5][1]=1;
            a[1][2]=a[2][3]=a[3][1]=1;

            for(int i=7;i<=n;i+=2)
            {
                a[i][i+1]=1;
                for(int j=1;j<i;j++)
                {
                    a[j][i]=1;
                    a[i+1][j]=1;
                }
            }
        }

        for(int i=1;i<=n;i++){
            for(int j=1;j<=n;j++)
                g << a[i][j];
            g << "\n";
        }
    }

    return 0;
}