Pagini recente » Cod sursa (job #2137436) | Cod sursa (job #1688708) | Cod sursa (job #495003) | Cod sursa (job #2899716) | Cod sursa (job #3149956)
#include <bits/stdc++.h>
using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
int const inf=1e9;
int n,i,j,k,a[505],dp[505][505],mi;
int main()
{
f>>n;
for(i=0;i<=n;++i) f>>a[i];
for(i=1;i<=n;++i)
for(j=1;j<=n;++j) dp[i][j]=inf;
for(i=1;i<n;++i){
dp[i][i+1]=a[i-1]*a[i]*a[i+1];
dp[i][i]=0;
}
dp[n][n]=0;
for(i=1;i<=n;++i)
for(j=i+1;j<=n;++j)
for(k=i;k<j;++k){
dp[i][j]=min(dp[i][k]+dp[k+1][j]+a[i-1]*a[k]*a[j] , dp[i][j]);
}
cout<<dp[1][n];
return 0;
}