Pagini recente » Cod sursa (job #2720491) | Cod sursa (job #3250374) | Cod sursa (job #49942) | Cod sursa (job #1789445) | Cod sursa (job #522740)
Cod sursa(job #522740)
#include<fstream>
using namespace std;
const long long INF=(1LL<<60);
ifstream f("podm.in");
ofstream g("podm.out");
long long d[1<<9];
long long bst[1<<9][1<<9],aux;
int i,j,k,N,x;
int main () {
f>>N;
for ( i = 0 ; i <= N ; ++i ){
f>>d[i];
}
for ( i = 1 ; i < N ; ++i ){
bst[i][i+1] = d[i-1] * d[i] * d[i+1];
}
for ( k = 2 ; k < N ; ++k ){
for ( i = 1 ; i <= N - k ; ++i ){
x = i + k;
bst[i][x] = INF;
for ( j = i ; j < x ; ++j ){
aux = bst[i][j] + bst[j+1][x] + d[i-1] * d[x] * d[j] ;
bst[i][x] = bst[i][x] < aux ? bst[i][x] : aux ;
}
}
}
g<<bst[1][N];
f.close();
g.close();
return 0;
}