Pagini recente » Cod sursa (job #512554) | Cod sursa (job #2108094) | Cod sursa (job #1702853) | Cod sursa (job #1613065) | Cod sursa (job #2588667)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("podm.in");
ofstream fout("podm.out");
int n;
unsigned long long v[502], sol[501][501];
int main() {
fin >> n;
for (int i = 1; i <= n; i++)
for (int j = i + 1; j <= n; j++)
sol[i][j] = 2000000000000000000;
for (int i = 1; i <= n + 1; i++)
fin >> v[i];
for (int k = 2; k <= n; k++) {
int i = 1;
int j = k;
while (j <= n) {
for (int h = i; h < j; h++)
sol[i][j] = min(sol[i][j], sol[i][h] + sol[h + 1][j] + v[i] * v[h + 1] * v[j + 1]);
i++;
j++;
}
}
fout << sol[1][n];
return 0;
}