Pagini recente » Cod sursa (job #479528) | Cod sursa (job #2275974) | Cod sursa (job #897924) | Cod sursa (job #922114) | Cod sursa (job #1517048)
#include <fstream>
using namespace std;
const int NMAX=501, INF=(1<<30);
int d[NMAX][NMAX], a[NMAX], n, i, j, q, k;
int main()
{
ifstream in("podm.in");
ofstream out("podm.out");
in>>n;
for(i=0; i<=n; i++)
in>>a[i];
for(i=1; i<n; i++)
d[i][i+1]=a[i-1]*a[i]*a[i+1];
for(q=2; q<n; q++)
for(i=1; i<=n-q; i++)
{
int j=i+q;
d[i][j]=INF;
for(k=i; k<j; k++)
d[i][j]=min(d[i][j], d[i][k]+d[k+1][j]+a[i-1]*a[k]*a[j]);
}
out<<d[1][n]<<'\n';
return 0;
}