Cod sursa(job #408365)

Utilizator cristiprgPrigoana Cristian cristiprg Data 2 martie 2010 23:42:58
Problema Oras Scor 55
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <cstdio>

int n, a[256][256];


int main()
{
    FILE *f = fopen("oras.in", "r");
    fscanf(f, "%d", &n);
    fclose(f);
    f = fopen("oras.out", "w");
    if (n == 4)
    {
        fprintf (f, "-1\n");
        return 0;
    }

    a[1][2] = 1;a[2][3] = 1;a[3][1] = 1;
    int i;
    if (n > 3)
    {
        for (i = 3; i < n; i+=2)
        {
            a[i+1][i+2] = 1;
            for (int k = 1; k <= i; ++k)
                a[k][i+1] = 1, a[i+2][k] = 1;
        }
        if (n % 2 == 0)
        {
            for (int k = 1; k < n; ++k)
                a[n][k] = 1;
            a[n-2][n] = 1;
        }

    }
    for (int i = 1; i <= n; ++i)
    {
        for (int j = 1; j <= n; ++j)
            fprintf (f, "%d", i==j?0:a[i][j]);
        fprintf (f, "\n");
    }

    fclose(f);
    return 0;
}