Cod sursa(job #26266)

Utilizator ionescu_bogdanIonescu Bogdan-Gabriel ionescu_bogdan Data 5 martie 2007 13:27:26
Problema Culori Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define nmax 520
#define MOD 9901

int n,i,j,k,a[nmax][nmax],s[nmax];

int main()
{
	freopen("culori.in","r",stdin);
	freopen("culori.out","w",stdout);

	scanf("%d",&n);
	for (i=0;i<2*n-1;i++)
		scanf("%d",s+i);
	for (i=0;i<2*n-1;++i)
		a[i][i]=1;
	for (i=1;i<2*n-1;i++)
		for (j=0;j<2*n-1-i;j++)
			if (s[j]==s[i+j])
			{
				for (k=j+1;k<i+j;k++)
					a[j][i+j]=(a[j][i+j]+a[j+1][k]*a[k+1][i+j])%MOD;
			}
	printf("%d\n",a[0][2*n-2]);

	return 0;
}