Cod sursa(job #496614)

Utilizator antoanelaAntoanela Siminiuc antoanela Data 29 octombrie 2010 23:10:20
Problema Culori Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <cstdio>
#define mod 9901
#define nmax 520

int n, v[nmax], s[nmax][nmax];

int main()
{
	freopen("culori.in","r",stdin);
	freopen("culori.out","w",stdout);
	scanf("%d",&n);
	n=2*n-1;
	int i, j, d, k;
	for (i=1; i<=n; i++) 
	{
		scanf("%d",&v[i]);
		s[i][i]=1;
	}
	for (d=2; d<n; d+=2)
		for (i=1; i+d<=n; i++)
		{
			j=i+d;
			if (v[i]==v[j])
				for (k=i+1; k<j; k++) 
					s[i][j]=(s[i][j]+s[i+1][k]*s[k+1][j])%mod;
		}
	printf("%d\n",s[1][n]);
}