Pagini recente » Cod sursa (job #1179160) | Cod sursa (job #1367982) | Cod sursa (job #1928237) | Cod sursa (job #1432865) | Cod sursa (job #2349914)
#include <fstream>
#define INF 1000000000000LL
using namespace std;
ifstream fi("podm.in");
ofstream fo("podm.out");
long long n;
long long L[501],C[501];
long long D[502];
long long Q[501][501];
int main()
{
fi>>n;
for (int i=1;i<=n+1;i++)
fi>>D[i];
for (int i=1;i<=n;i++)
{
L[i]=D[i];
C[i]=D[i+1];
}
/// se construieste Q
for (int i=n-1;i>=1;i--)
for (int j=i+1;j<=n;j++)
{
Q[i][j]=INF;
for (int k=i;k<=j-1;k++)
Q[i][j]=min(Q[i][j],Q[i][k]+Q[k+1][j]+L[i]*C[k]*C[j]);
}
fo<<Q[1][n];
fi.close();
fo.close();
return 0;
}