Pagini recente » Cod sursa (job #2684639) | Cod sursa (job #2443346) | Cod sursa (job #857537) | Cod sursa (job #151094) | Cod sursa (job #3241636)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("podm.in");
ofstream fout("podm.out");
int64_t n, v[505];
vector<vector<int64_t> > dp;
int main(){
fin >> n;
++n;
for(int i = 1; i <= n; ++i)
fin >> v[i];
dp.resize(n + 1, vector<int64_t>(n + 1, 1e18));
for(int i = 1; i < n; ++i)
dp[i][i + 1] = 0;
for(int len = 3; len <= n; ++len)
for(int i = 1; i <= n - len + 1; ++i){
int j = i + len - 1;
for(int k = i + 1; k < j; ++k)
dp[i][j] = min(dp[i][j], dp[i][k] + dp[k][j] + v[i] * v[k] * v[j]);
}
fout << dp[1][n];
}