Pagini recente » Istoria paginii utilizator/laura.chelaru | Monitorul de evaluare | Cod sursa (job #1774659) | Cod sursa (job #3176846) | Cod sursa (job #1289636)
#include<cstdio>
#define INF (1LL<<62)
long long n,i,j,l,k,v[1010],L[1010],c[1010],d[510][510];
FILE *f,*g;
long long minim(long long a,long long b){
if(a<b)
return a;
return b;
}
int main(){
f=fopen("podm.in","r");
g=fopen("podm.out","w");
fscanf(f,"%lld",&n);
for(i=1;i<=n+1;i++){
fscanf(f,"%lld",&v[i]);
}
L[1]=v[1];
for(i=2;i<=n;i++){
c[i-1]=v[i];
L[i]=v[i];
}
c[n]=v[n+1];
for(l=1;l<=n-1;l++){
for(i=1;i+l<=n;i++){
j=i+l;
d[i][j]=INF;
for(k=i;k<j;k++){
d[i][j]=minim(d[i][j], d[i][k]+d[k+1][j]+L[i]*c[j]*c[k]);
}
}
}
fprintf(g,"%lld",d[1][n]);
fclose(f);
fclose(g);
return 0;
}