Pagini recente » Cod sursa (job #1459200) | Cod sursa (job #3037512) | Cod sursa (job #286144) | Cod sursa (job #827573) | Cod sursa (job #812753)
Cod sursa(job #812753)
#include<cstdio>
#include<algorithm>
using namespace std;
const int INF=2000000000;
int d[40],n,i,k,j,m[100][100],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;
}