Cod sursa(job #1511846)

Utilizator ovidiuz98Zamfir Ovidiu ovidiuz98 Data 27 octombrie 2015 10:56:26
Problema Culori Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#define DIM 1005
#define MOD 9901
#include <fstream>

using namespace std;

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

int N, v[DIM];

int D[DIM][DIM];

int main(){

    fin >> N ;

    N = 2*N-1;

    for(int i=1;i<=N;i++){
        fin >> v[i];
    }

    for(int i=1;i<=N;i++)
        D[i][i]=1;

    for(int x=3;x<=N;x+=2){
        for(int i=1;i+x-1<=N;i++){
            int j=i+x-1;
            if(v[i] == v[j]){
                for(int k=i+1;k<=j;k++)
                    D[i][j] = (D[i][j] + D[i+1][k] * D[k+1][j])%MOD;
            }
        }
    }

    fout << D[1][N];

    fin.close();fout.close();

    return 0;

}