Pagini recente » Cod sursa (job #2570835) | Cod sursa (job #2285059) | Cod sursa (job #3210630) | Cod sursa (job #611259) | Cod sursa (job #649877)
Cod sursa(job #649877)
#include "stdio.h"
const long INF=666666666666666LL;
const int MAXN = 505;
typedef long long LLong;
int main(){
FILE *f;
LLong M[MAXN][MAXN],d[MAXN];
LLong 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 = j+i;
M[k][m] = INF;
for(p=j;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 \n",M[1][n]);
fclose(f);
return 0;
}