Cod sursa(job #1935360)

Utilizator LeVladzCiuperceanu Vlad LeVladz Data 22 martie 2017 11:38:27
Problema Oras Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.59 kb
#include <fstream>

using namespace std;

ifstream fin("oras.in");
ofstream fout("oras.out");

int n,i,k,v,j;
int par[205][205];
int imp[205][205];

int main()
{
    fin >> n;
    if (n == 4)
    {
        fout << -1;
        return 0;
    }
    imp[1][2] = 1;
    imp[2][3] = 1;
    imp[3][1] = 1;
    par[1][2] = 1;
    par[1][6] = 1;
    par[2][3] = 1;
    par[2][4] = 1;
    par[3][1] = 1;
    par[3][6] = 1;
    par[4][1] = 1;
    par[4][3] = 1;
    par[4][5] = 1;
    par[5][1] = 1;
    par[5][2] = 1;
    par[5][3] = 1;
    par[6][2] = 1;
    par[6][4] = 1;
    par[6][5] = 1;
    if (n%2 == 0)
    {
        if (n != 6)
        {
            for (k=8; k<=n; k+=2)
            {
                //inseram nodurile k si k-1
                for (v=1; v<=k-2; v++)
                {
                    par[v][k] = 1;
                    par[k-1][v] = 1;
                }
                par[k][k-1] = 1;
            }
        }
    }
    else
        for (k=5; k<=n; k+=2)
        {
            //inseram nodurile k si k-1
            for (v=1; v<=k-2; v++)
            {
                imp[v][k] = 1;
                imp[k-1][v] = 1;
            }
            imp[k][k-1] = 1;
        }
    if (n%2 == 1)
    {
        for (i=1; i<=n; i++)
        {
            for (j=1; j<=n; j++)
                fout << imp[i][j];
            fout << "\n";
        }
    }
    else
    {
        for (i=1; i<=n; i++)
        {
            for (j=1; j<=n; j++)
                fout << par[i][j];
            fout << "\n";
        }
    }
    return 0;
}