Pagini recente » Cod sursa (job #836208) | Cod sursa (job #1691553) | Cod sursa (job #1440337) | Cod sursa (job #1645680) | Cod sursa (job #2174119)
#include <fstream>
using namespace std;
ifstream cin("podm.in");
ofstream cout("podm.out");
const int MAX = 503;
const long long INF = (1ll << 18);
long long dp[MAX][MAX];
int n, d[MAX];
int main()
{
cin >> n;
for(int i = 0; i <= n; ++i) {
cin >> d[i];
}
for(int i = 1; i < n; ++i) {
int lin = 1, col = i + 1;
while(col <= n) {
dp[lin][col] = INF;
for(int k = lin; k < col; ++k)
dp[lin][col] = min(dp[lin][col], dp[lin][k] + dp[k + 1][col] + 1ll * d[lin - 1]* d[k] * d[col]);
++lin;
++col;
}
}
cout << dp[1][n];
return 0;
}