Pagini recente » Cod sursa (job #307903) | Cod sursa (job #2530998) | Cod sursa (job #1200670) | Cod sursa (job #448615) | Cod sursa (job #575355)
Cod sursa(job #575355)
#include<fstream>
#include<iostream>
#define mod 9901
using namespace std;
long long n,a[600],v[600][600];
void best()
{
int i,j,k,N;
N=2*n-1;
for (i=1;i<=N;i++)
v[i][i]=1;
for (i=1;i<=N-2;i++)
if (a[i]==a[i+2])
v[i][i+2]=1;
for (i=4;i<N;i+=2)
for (j=1;j<=N-i;j++)
if (a[j]==a[j+i])
{
v[j][j+i]=v[j+1][j+i-1];
for (k=j+2;k<j+i;k+=2)
v[j][j+i]+=v[j][k]*v[k+1][j+i-1];
v[j][j+i]%=mod;
}
}
void citire()
{
int i;
ifstream f("culori.in");
f>>n;
for (i=1;i<=2*n-1;i++)
f>>a[i];
f.close();
}
void afisare()
{
ofstream g("culori.out");
g<<v[1][2*n-1]%mod;
g.close();
}
int main()
{
citire();
best();
afisare();
return 0;
}