Pagini recente » Cod sursa (job #1232129) | Cod sursa (job #214734) | Cod sursa (job #503007) | Cod sursa (job #1042689) | Cod sursa (job #1739866)
# include <bits/stdc++.h>
using namespace std;
const int Nmax = 500 + 5;
int n, i, dist, k;
long long a[Nmax], d[Nmax][Nmax];
int main ()
{
freopen("podm.in", "r", stdin);
freopen("podm.out", "w", stdout);
scanf("%d ", &n);
for (i = 0; i <= n; ++i)
scanf("%d ", &a[i]);
for (dist = 1; dist <= n; ++dist)
for (i = 1; i <= n - dist; ++i){
d[i][i + dist] = LLONG_MAX;
for (k = i; k < i + dist; ++k)
d[i][i + dist] = min (d[i][i + dist], d[i][k] + d[k + 1][i + dist] + a[i - 1] * a[k] * a[i + dist]);
}
printf("%lld\n", d[1][n]);
return 0;
}