Pagini recente » Cod sursa (job #2218178) | Cod sursa (job #797729) | Cod sursa (job #1194815) | Cod sursa (job #1258662) | Cod sursa (job #1689762)
#include <iostream>
#include <cstdio>
using namespace std;
long long int matrici[511];
long long int inmultiri[511][511];
int main()
{
FILE *fin = fopen("podm.in", "r");
FILE *fout = fopen("podm.out", "w");
int n;
fscanf(fin, "%d", &n);
for(int i = 1; i <= n + 1; ++i){
fscanf(fin, "%lld", &matrici[i]);
}
for(int l = 1; l <= n; ++l){
for(int i = 1; i <= n + 1 - l ; ++i){
int j = i + l;
inmultiri[i][j] = 1LL << 60;
for(int k = i; k <= j; ++k){
inmultiri[i][j] = min(inmultiri[i][j], inmultiri[i][k] + inmultiri[k + 1][j] + matrici[i] * matrici[k + 1] * matrici[j + 1]);
}
}
}
fprintf(fout, "%lld", inmultiri[1][n]);
return 0;
}