Pagini recente » Cod sursa (job #1866343) | Cod sursa (job #2527821) | Cod sursa (job #854961) | Cod sursa (job #1490085) | Cod sursa (job #941167)
Cod sursa(job #941167)
#include <fstream>
using namespace std;
int main()
{
ifstream fin("podm.in");
ofstream fout("podm.out");
int n;
fin >> n;
int a[n+1];
for (int i = 0; i <= n; ++i)
fin >> a[i];
long long dp[n+1][n+1];
for (int i = 0; i <= n; ++i)
for (int j = 0; j <= n; ++j)
dp[i][j] = 1ll<<60;
for (int i = 0; i < n; ++i)
dp[i][i+1] = 0;
for (int i = n-2; i >= 0; --i)
for (int j = i+2; j <= n; ++j)
for (int k = i+1; k < j; ++k)
dp[i][j] = min(dp[i][j], dp[i][k] + (long long)a[i]*a[k]*a[j] + dp[k][j]);
fout << dp[0][n];
return 0;
}