Pagini recente » Cod sursa (job #2985777) | Cod sursa (job #815400) | Cod sursa (job #2171078) | Cod sursa (job #645600) | Cod sursa (job #2768823)
#include <bits/stdc++.h>
using namespace std;
const unsigned long long Inf = 1000000000000000000;
unsigned long long n, dim[502], dp[501][501];
ifstream in("podm.in");
ofstream out("podm.out");
int main()
{
in >> n;
for (int i = 1; i <= n + 1; i++)
in >> dim[i];
for (int i = 1; i < n; i++)
for (int j = i + 1; j <= n; j++)
dp[i][j] = Inf;
for (int k = 1; k < n; k++)
for (int i = 1, j = k + 1; j <= n; i++, j++)
for (int mij = i; mij < j; mij++)
dp[i][j] = min(dp[i][j], dp[i][mij] + dp[mij + 1][j] + dim[i] * dim[j + 1] * dim[mij + 1]);
out << dp[1][n];
return 0;
}