Pagini recente » Cod sursa (job #2598286) | Cod sursa (job #2509020) | Cod sursa (job #23665) | Cod sursa (job #253660) | Cod sursa (job #522725)
Cod sursa(job #522725)
#include<fstream>
using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
long long d[1<<9];
long long bst[1<<9][1<<9],aux;
long long Inf = 1LL << 60;
int i,j,k,N;
int main () {
f>>N;
for ( i = 1 ; i <= N + 1 ; ++i ){
f>>d[i];
}
for ( i = 2 ; i <= N ; ++i ){
bst[i][i+1] = 1LL * d[i-1] * d[i] * d[i+1];
}
for ( k = 2 ; k < N ; ++k ){
for ( i = 2 ; i + k <= N + 1; ++i ){
bst[i][i+k] = Inf;
for ( j = i ; j < i + k ; ++j ){
aux = bst[i][j] + bst[j+1][i+k] + d[i-1] * d[i+k] * d[j] ;
if ( bst[i][i+k] > aux )
bst[i][i+k] = aux;
}
}
}
g<<bst[2][N+1];
return 0;
}