Pagini recente » Cod sursa (job #1446278) | Cod sursa (job #1997892) | Cod sursa (job #1216253) | Cod sursa (job #2922967) | Cod sursa (job #2758698)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("podm.in");
ofstream fout ("podm.out");
int n;
long long dp[503][503],a[503];
int main()
{
int i , j , k;
long long m;
fin >> n;
for (i = 0; i <= n; i++)
fin >> a[i];
for (i = 1; i < n; i++)
dp[i][i + 1] = a[i - 1] * a[i] * a[i + 1];
for (i = n - 1; i >= 1; i--)
for (j = i + 2; j <= n; j++)
{
m = 1LL << 60;
for (k = i; k <= j - 1; k++)
m = min (m , dp[i][k] + dp[k + 1][j] + a[i - 1] * a[k] * a[j]);
dp[i][j] = m;
}
fout << dp[1][n] << " ";
return 0;
}