Pagini recente » Cod sursa (job #1857235) | Cod sursa (job #2134057) | Cod sursa (job #1517652) | Cod sursa (job #122846) | Cod sursa (job #1237314)
#include <stdio.h>
#define MAXN 500
long long ma[MAXN + 1][MAXN + 1];
int a[MAXN + 1];
int main(){
FILE *in = fopen("podm.in", "r");
int n, i;
fscanf(in, "%d", &n);
for(i = 0; i <= n; i++){
fscanf(in, "%d", &a[i]);
}
fclose(in);
int j, k;
long long x;
for(i = 1; i <= n; i++){
for(j = 1; j < n; j++){
if(i + j <= n){
for(k = j; k < i + j && k <= n; k++){
x = ma[j][k] + ma[k + 1][i + j] + 1LL * a[j - 1] * a[k] * a[i + j];
if(ma[j][i + j] == 0 || ma[j][i + j] > x)
ma[j][i + j] = x;
}
}
}
}
FILE *out = fopen("podm.out", "w");
fprintf(out, "%lld", ma[1][n]);
fclose(out);
return 0;
}