Pagini recente » Cod sursa (job #2959586) | Cod sursa (job #2093077) | Cod sursa (job #2714830) | Cod sursa (job #2574820) | Cod sursa (job #2879211)
#include <fstream>
using namespace std;
ifstream cin("podm.in");
ofstream cout("podm.out");
long long dim[505];
long long mat[505][505];
const long long INF = 2e18;
void computeDinamic(int n){
for(int d = 1; d < n - 1; d++){
for(int i = 1; i < n - d; i++){
int j = i + d;
long long minn = INF;
for(int k = i; k <= j - 1; k++)
minn = min(minn, mat[i][k] + mat[k + 1][j] + 1LL * dim[i - 1] * dim[j] * dim[k]);
mat[i][j] = minn;
}
}
}
int main()
{
long long n;
cin >> n;
n++;
for(int i = 0; i < n; i++)
cin >> dim[i];
computeDinamic(n);
cout << mat[1][n - 1];
return 0;
}