Cod sursa(job #3005136)

Utilizator DKMKDMatei Filibiu DKMKD Data 16 martie 2023 19:40:27
Problema Oras Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1 kb
#include <fstream>
using namespace std;

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

int n, j, k, cnt, v[201][201];

int fct(int a, int x) {
    if (a == x)
        return 0;

    fct(a - 2, x);

    for (int i = 1; i <= a - 2; i++) {
        v[i][a] = 1;
        v[a - 1][i] = 1;
    }
    v[a][a - 1] = 1;

    return 0;
}

int main() {
    fin >> n;
    if (n % 2 == 1) {
        v[1][2] = 1;
        v[2][3] = 1;
        v[3][1] = 1;
        cnt = 3;
    }
    else {
        v[1][2] = 1; v[1][3] = 1; v[1][5] = 1;
        v[2][3] = 1; v[2][4] = 1; v[2][5] = 1;
        v[3][4] = 1; v[3][6] = 1;
        v[4][1] = 1; v[4][5] = 1; v[4][6] = 1;
        v[5][3] = 1; v[5][6] = 1;
        v[6][1] = 1; v[6][2] = 1;
        cnt = 6;
    }

    if (n == 4) {
        fout << "-1";
        return 0;
    }

    fct(n, cnt);

    for (j = 1; j <= n; j++) {
        for (k = 1; k <= n; k++)
            fout << v[j][k];
        fout << "\n";
    }

    return 0;
}