Pagini recente » Cod sursa (job #1420071) | Cod sursa (job #2793385) | Cod sursa (job #1259688) | Cod sursa (job #1566427) | Cod sursa (job #426421)
Cod sursa(job #426421)
#include<stdio.h>
#define MOD 9901
int d[301][301],n;
int cpt,v[301];
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];
if(d[i][cpt]>=MOD)
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;
}