Pagini recente » Cod sursa (job #1733524) | Cod sursa (job #2212353) | Cod sursa (job #2137485) | Cod sursa (job #2299918) | Cod sursa (job #921849)
Cod sursa(job #921849)
#include <fstream>
using namespace std;
#define NMAX 503
#define INF 1LL<<60
ifstream fin("podm.in");
ofstream fout("podm.out");
long long N,P[NMAX],Sol[NMAX][NMAX];
int main(){
fin >> N;
for(int i=0;i<=N;i++) fin >> P[i];
for(int d=1; d<N; d++){
for(int i=1; i+d<=N; i++){
if(d==1) Sol[i][i+d] = P[i-1]*P[i]*P[i+1];
else{
Sol[i][i+d] = INF;
for( int k=i ; k<i+d; k++){
Sol[i][i+d] = min(Sol[i][i+d], Sol[i][k]+Sol[k+1][i+d]+P[i-1]*P[k]*P[i+d]);
}
}
}
}
fout << Sol[1][N] << "\n";
return 0;
}