Cod sursa(job #2496086)
Utilizator | Data | 20 noiembrie 2019 10:51:15 | |
---|---|---|---|
Problema | Culori | Scor | 44 |
Compilator | cpp-64 | Status | done |
Runda | casiaiziscanudaisimulareprimaora | Marime | 0.7 kb |
#include <fstream>
using namespace std;
long long n,mod,i,j,k,l,v[600],d[600][600];
int main()
{
ifstream f("culori.in");
ofstream g("culori.out");
f>>n;
n=2*n-1;
mod=9901;
for(i=1; i<=n; i++)
f>>v[i];
for(i=1; i<=n; i++)
d[i][i]=1;
for(l=1; l<=n; l++)
{
for(j=l+1; j<=n; j++)
{
i=j-l;
if(v[i]!=v[j])
continue;
for(k=i+1; k<j; k++)
{
if(v[i+1]!=v[k])
continue;
d[i][j]+=d[i+1][k]*d[k+1][j];
d[i][j]=(d[i][j]%mod);
}
}
}
g<<d[1][n]<<'\n';
return 0;
}