Cod sursa(job #3327311)

Utilizator Radu_BicliBiclineru Radu Radu_Bicli Data 3 decembrie 2025 11:27:25
Problema Culori Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("culori.in");
ofstream fout("culori.out");
int n, i, j, k, l, cul[2 * 262], d[2 * 262][2 * 262];

int main() {
    fin.tie(nullptr);
    fout.tie(nullptr);

    fin >> n;
    n = 2 * n - 1;
    for(i = 1; i <= n; i++) fin >> cul[i];
    for(i = 1; i <= n; i++) d[i][i] = 1;
    for(l = 2; l <= n; l++) {
        for(i = 1; i + l - 1 <= n; i++) {
            int j = i + l - 1;

            if(cul[i] != cul[j]) continue;

            for(k = i + 2; k <= j; k++) {
                if(cul[i] != cul[j]) continue;
                d[i][j] += d[i + 1][k - 1] * d[k][j];
            }
        }
    }
    fout << d[1][n];

    return 0;
}