Pagini recente » Cod sursa (job #2524473) | Cod sursa (job #14073) | Cod sursa (job #535293) | Cod sursa (job #480926) | Cod sursa (job #649902)
Cod sursa(job #649902)
#include "stdio.h"
typedef long long LLong;
const LLong INF=100000000000000000LL;
const int MAXN = 501;
int main(){
FILE *f;
LLong M[MAXN][MAXN],d[MAXN+1],n;
int t,i,j,k,val;
f = fopen("podm.in","r");
fscanf(f,"%lld",&n);
for(i=1;i<=n+1;++i)
fscanf(f,"%lld",&d[i]);
fclose(f);
for(t=1;t<=n-1;t++){
for(i=1;i<=n-t;i++){
j=i+t;
M[i][j]=INF;
for(k=i;k<j;k++){
val = M[i][k]+M[k+1][j]+d[i]*d[k+1]*d[j+1];
if(M[i][j] > val)
M[i][j] = val;
}
}
}
f = fopen("podm.out","w");
fprintf(f,"%lld",M[1][n]);
fclose(f);
return 0;
}