Pagini recente » Cod sursa (job #2758916) | Cod sursa (job #1582107) | Cod sursa (job #369507) | Cod sursa (job #2466986) | Cod sursa (job #468580)
Cod sursa(job #468580)
#include <stdio.h>
#define MAXN 1000
long long n, i, j, q, k, l, t;
long long p[MAXN];
long long m[MAXN][MAXN];
int main() {
freopen("podm.in", "r", stdin);
freopen("podm.out", "w", stdout);
scanf("%d", &n);
for (i=0;i<=n;++i) {
scanf("%lld", &p[i]);
m[i][i] = 0;
}
for (l=2;l<=n;++l) {
for (i=1;i<=n;++i) {
j = i + l - 1;
t = -1LL;
for (k=i;k<j;k++) {
q = m[i][k] + m[k+1][j] + p[i-1]*p[k]*p[j];
if (t==-1 || q < t) t = q;
}
m[i][j] = t;
}
}
printf("%lld\n", m[1][n]);
return 0;
}