Pagini recente » Cod sursa (job #991045) | Cod sursa (job #2280790) | Cod sursa (job #596534) | Cod sursa (job #1925115) | Cod sursa (job #18659)
Cod sursa(job #18659)
#include <cstdio>
#define nmax 512
#define modulo 9901
int a[nmax],c[nmax][nmax];
int n;
int este(int val,int s,int f) {
for(int i = s; i <= f; i++)
if(a[i] == val) return 1;
return 0;
}
int main() {
freopen("culori.in","r",stdin);
freopen("culori.out","w",stdout);
scanf("%d",&n);
n = n * 2 - 1;
for(int i = 1; i <= n; i ++) scanf("%d",&a[i]);
for(int l = 0; l < n; l++)
for(int s = 1; s <= n; s++) {
if((a[s] == a[s + l]) && (!este(a[s],s + 1, s + l - 1))) c[s][s + l] = 1;
int crt = c[s][s + l];
for(int i = s + 1; i <= s + l; i++)
crt += c[s][i] * c[i][s + l];
c[s][s + l] = crt;
}
printf("%d\n",c[1][n]);
return 0;
}