Pagini recente » Cod sursa (job #1313061) | Cod sursa (job #2506747) | Cod sursa (job #3259511) | Cod sursa (job #1516494) | Cod sursa (job #429676)
Cod sursa(job #429676)
#include<stdio.h>
#define MOD 9901
int d[601][601],n;
int cpt,v[601];
int main ()
{
int i,dist,j;
freopen("culori.in","r",stdin);
freopen("culori.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=2*n-1;i++)
scanf("%d",&v[i]);
n=2*n-1;
for(i=1;i<=n;i++)
d[i][i]=1;
for(dist=2;dist<=n;dist++)
for(i=1;i<=n-dist+1;i++)
{
cpt=i+dist-1;
if(v[i]!=v[cpt])
continue;
for(j=i+1;j<cpt;j++)
if(v[j]==v[i])
{
d[i][cpt]+=d[i][j]*d[j][cpt];
d[i][cpt]%=MOD;
}
d[i][cpt]+=d[i+1][cpt-1];
if(d[i][cpt]>=MOD)
d[i][cpt]-=MOD;
}
printf("%d\n",d[1][n]);
return 0;
}