Pagini recente » Cod sursa (job #919384) | Cod sursa (job #3197266) | Cod sursa (job #38407) | Cod sursa (job #611860) | Cod sursa (job #649884)
Cod sursa(job #649884)
#include "stdio.h"
const long INF=1000000000000LL;
const int MAXN = 550;
typedef long long LLong;
int main(){
FILE *f;
LLong M[MAXN][MAXN],d[MAXN],n,min;
int i,j,k,m,p;
f = fopen("podm.in","r");
fscanf(f,"%lld",&n);
for(i=1;i<=n+1;++i)
fscanf(f,"%lld",&d[i]);
fclose(f);
for(i=1;i<=n-1;++i)
for(j=1;j<=n-i;++j){
k = j;
m = i+j;
M[k][m] = INF;
for(p=k;p<=m-1;++p){
min = M[k][p]+M[p+1][m]+d[k]*d[p+1]*d[m+1];
if(min<M[k][m])
M[k][m] = min;
}
}
f = fopen("podm.out","w");
fprintf(f,"%lld",M[1][n]);
fclose(f);
return 0;
}