Pagini recente » Cod sursa (job #1013380) | Cod sursa (job #104061) | Cod sursa (job #2947629) | Cod sursa (job #2435187) | Cod sursa (job #1575735)
#include <fstream>
#define inf 1LL<<60
using namespace std;
int n;
long long a[503],d[503][503];
inline void Citire()
{
int i;
ifstream fin("podm.in");
fin>>n;
for(i=0;i<=n;++i)
fin>>a[i];
fin.close();
}
inline void Solutie()
{
int i,j,pas,k;
long long minim;
for(i=1;i<n;++i)
d[i][i+1]=a[i-1]*a[i]*a[i+1];
for(pas=2;pas<n;++pas)
for(i=1;i<=n-pas;++i)
{
j=i+pas;
minim=inf;
for(k=i+1;k<=j;++k)
minim=min(minim,d[i][k-1] + d[k][j] + a[i-1]*a[k-1]*a[j]);
d[i][j]=minim;
}
}
int main()
{
Citire();
Solutie();
ofstream fout("podm.out");
fout<<d[1][n]<<"\n";
fout.close();
return 0;
}