Pagini recente » Cod sursa (job #2962928) | Cod sursa (job #2886139) | Cod sursa (job #1697752) | Cod sursa (job #1513593) | Cod sursa (job #812754)
Cod sursa(job #812754)
#include<cstdio>
#include<algorithm>
using namespace std;
const int INF=2000000000;
long long int d[1000],n,i,k,j,m[1000][1000],x;
int main(){
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
scanf("%d",&n);
for(i=0;i<=n;++i){
scanf("%d",&d[i]);
}
for(i=1;i<=n;++i){
m[i][i]=0;
}
for(i=1;i<=n-1;++i){
m[i][i+1]=d[i-1]*d[i]*d[i+1];
}
for(x=2;x<=n-1;++x){
for(i=1;i<=n-x;++i){
j=i+x;
m[i][j]=INF;
for(k=i;k<=j-1;++k){
m[i][j]=min(m[i][j],m[i][k]+m[k+1][j]+d[i-1]*d[k]*d[j]);
}
}
}
printf("%d",m[1][n]);
return 0;
}