Pagini recente » Cod sursa (job #2926779) | Cod sursa (job #3146648) | Cod sursa (job #3202219) | Istoria paginii preoni-2004/runda-2 | Cod sursa (job #369827)
Cod sursa(job #369827)
#include <stdio.h>
#define NMAX 512
#define LL long long
#define INF 99999999999999999LL
short int N,d[NMAX];
LL T[NMAX][NMAX];
int main()
{
int i,j,k;
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
scanf("%hd",&N);
for (i=0;i<=N;++i) scanf("%hd",&d[i]);
for (i=N-1;i;--i)
{
T[i][i+1]=(LL)d[i-1]*d[i]*d[i+1];
for (j=i+2;j<=N;++j)
{
LL min=INF;
for (k=i;k<j;++k)
{
LL ret=T[i][k]+T[k+1][j]+(LL)d[i-1]*d[k]*d[j];
if (ret<min) min=ret;
}
T[i][j]=min;
}
}
printf("%lld",T[1][N]);
return 0;
}