Cod sursa(job #1139130)

Utilizator marta_diannaFII Filimon Marta Diana marta_dianna Data 10 martie 2014 21:24:51
Problema Oras Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include<fstream>
#define NMAX 210

using namespace std;

int n, a[NMAX][NMAX], i, j;

ifstream f("oras.in");
ofstream g("oras.out");

void Genereaza(int n)
{
    int gata=0, i;

    while (!gata)
    {

        if (n==3)
        {
            gata=1; a[1][2]=a[2][3]=a[3][1]=1;
        }
        else
            if (n==6)
            {
                gata=1;
                a[1][2]=a[1][3]=a[1][4]=a[5][1]=a[6][1]=1;
                a[2][3]=a[2][4]=a[2][5]=a[6][2]=1;
                a[3][4]=a[5][3]=a[3][6]=1;
                a[4][5]=a[4][6]=1;
                a[5][6]=1;
            }
            else
            {
                a[n-1][n]=1;
                for (i=1; i<=n-2; ++i) a[i][n-1]=a[n][i]=1;
                n-=2;
            }
    }
}

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

int main()
{
    f>>n;
    if (n==4) g<<"-1";
    else
    {
        Genereaza(n);
        Scrie();
    }
    f.close();
    g.close();
    return 0;
}