Pagini recente » Cod sursa (job #756726) | Cod sursa (job #1791701) | Cod sursa (job #3285715) | Cod sursa (job #384324) | Cod sursa (job #1150019)
#include<cstdio>
#include<iostream>
using namespace std;
#define NMAX 501
#define INF 1ll*500000000000000
int N , d[NMAX];
long long m[NMAX][NMAX] ;
int main()
{
freopen("podm.in" , "r" , stdin );
freopen("podm.out" , "w" , stdout );
scanf("%d" , &N );
for(int i = 0 ; i <= N ; ++i )
scanf("%d" , &d[i]);
for(int l = 2 ; l <= N ; ++l )
for(int i = 1 ; l+i-1 <= N ; ++i )
{
int j = l+i-1;
m[i][j] =INF;
for(int k = i ; k < j ; ++k )
m[i][j] = min(m[i][j] , m[i][k] + m[k+1][j] + 1ll*d[i-1]*d[k]*d[j]);
}
cout<<m[1][N];
return 0;
}