Cod sursa(job #1008010)

Utilizator Mihai22eMihai Ionut Enache Mihai22e Data 10 octombrie 2013 00:42:53
Problema Oras Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <fstream>
using namespace std;

const int MAX_N = 202;

int N;
bool A[MAX_N][MAX_N];

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

    f >> N;

    if(N == 4)
        g << -1 << "\n";
    else {
        if(N%2 == 0) {
            A[1][5] = A[1][6] = A[2][1] = A[2][4] = A[2][6] = A[3][1] = A[3][2] = A[4][1] = A[4][3] = A[5][2] = A[5][3] = A[5][4] = A[6][3] = A[6][4] = A[6][5] = 1;
            for(int i = 8; i <= N; i += 2) {
                for(int j = 1; j <= i-2; ++j)
                    A[j][i-1] = A[i][j] = 1;
                A[i-1][i] = 1;
            }
        }
        else {
            A[1][2] = A[2][3] = A[3][1] = 1;
            for(int i = 5; i <= N; i += 2) {
                for(int j = 1; j <= i-2; ++j)
                    A[j][i-1] = A[i][j] = 1;
                A[i-1][i] = 1;
            }
        }
    }

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

    f.close();
    g.close();

    return 0;
}