Pagini recente » Cod sursa (job #544023) | Cod sursa (job #2235339) | fmi-no-stress-9-warmup | Cod sursa (job #498788) | Cod sursa (job #1767244)
#include <fstream>
#include <vector>
using namespace std;
const int kInfinit = (1 << 30);
int main()
{
ifstream fin("podm.in");
ofstream fout("podm.out");
int n;
fin >> n;
vector<int> dim(n + 1);
vector<vector<int>> prod(n + 1, vector<int>(n + 1, kInfinit));
for (int i = 0; i <= n; ++i) {
fin >> dim[i];
prod[i][i] = 0;
}
for (int l = 1; l < n; ++l) {
for (int i = 1; i <= n - l; ++i) {
for (int k = i; k < i + l; ++k) {
int cost_nou = prod[i][k] + prod[k + 1][i + l] + dim[i - 1] * dim[k] * dim[i + l];
prod[i][i + l] = min(prod[i][i + l], cost_nou);
}
}
}
fout << prod[1][n] << "\n";
return 0;
}