Pagini recente » Cod sursa (job #1822643) | Cod sursa (job #598768) | Cod sursa (job #2216174) | Cod sursa (job #1663503) | Cod sursa (job #21914)
Cod sursa(job #21914)
#include <stdio.h>
#include <string.h>
#define nmax 25
int main()
{
freopen("culori.in","r",stdin);
freopen("culori.out","w",stdout);
int i, j, k, n, v[nmax], c[nmax][nmax], len;
scanf("%d", &n);
memset(c, 0, sizeof(c));
for(i = 1; i < 2 * n; ++i)
{
scanf("%d", &v[i]);
c[i][i] = 1;
}
for(len = 2; len <= 2 * n - 2; len += 2)
{
for(i = 1; i + len <= 2 * n - 1; ++i)
{
if(v[i] == v[i + len])
{
for(j = i + 1; j < i + len; ++j)
{
if(c[i + 1] == c[j])
{
c[i][i + len] += c[i + 1][j] * c[j + 1][i + len];
}
}
}
}
}
printf("%d\n",c[1][2 * n - 1]);
return 0;
}