Cod sursa(job #34085)

Utilizator pocaituDavid si Goliat pocaitu Data 20 martie 2007 01:36:05
Problema Culori Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<stdio.h>
#define nmax 600
#define nrm 600
#define ko 9901
long a[nmax][nmax],s[nrm],n;

long rezolva()
{long i,l,k;
 for(i=1;i<=2*n-1;i++)
  //if(s[i]==s[i+2])
	a[i][i]=1;

 for(l=2;l<2*n-1;l+=2)
	for(i=1;i<=2*n-1;i++)
	 if(s[i]==s[i+l])
	  for(k=i+1;k<i+l&&k<=2*n-1;k++)
	   if(s[k]==s[i+1])
		 {
		  a[i][i+l]=(a[i][i+l]+a[i+1][k]*a[k+1][i+l])%ko;
		  }

 return a[1][2*n-1];
 }





int main()
{int i;
 freopen("culori.in","r",stdin);
 scanf("%ld",&n);
 for(i=1;i<=2*n-1;i++)
  scanf("%ld",&s[i]);

 freopen("culori.out","w",stdout);
 printf("%ld",rezolva());
 fclose(stdout);
 return 0;
 }