Pagini recente » Cod sursa (job #2691743) | Cod sursa (job #1628674) | Cod sursa (job #1374638) | Cod sursa (job #2123971) | Cod sursa (job #2649186)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("fisier.in");
int v[505];
int dp[505][505];
int main() {
int n;
fin >> n;
for (int i = 1; i <= n; ++i)
fin >> v[i];
for (int i = 0; i <= n; ++i)
for (int j = 0; j <= n; ++j)
dp[i][j] = 999999999;
for (int i = 1; i < n; ++i)
dp[i][i + 1] = v[i - 1] * v[i] * v[i + 1];
for (int j = 2; j <= n; ++j)
for (int i = 1; i <= n; ++i){
for (int k = i; k <= j - 1; ++k)
dp[i][j] = min(dp[i][j], dp[i][k] + dp[k + 1][j] + v[i] * v[k] * v[j]);
cout << dp[1][n];
return 0;
}