Pagini recente » Cod sursa (job #1339844) | Cod sursa (job #706094) | Cod sursa (job #2028870) | Cod sursa (job #2164987) | Cod sursa (job #1470828)
#include <iostream>
#include <fstream>
#define N 515
using namespace std;
int n, a[N][N], d[N];
inline int min (int x, int y)
{
if (x == 0)
return y;
return x<y ? x:y ;
}
int main()
{
int i,j,k;
fstream f,g;
f.open("podm.in",ios::in);
g.open("podm.out",ios::out);
f>>n;
for (i=1 ;i<=n+1; i++)
f>>d[i];
// dim matrice i => d[i],d[i+1]
// d==0
// d==1
for (i = 1 ; i < n ; i++)
a[i][i+1] = d[i]*d[i+1]*d[i+2];
for (j=2 ; j<n ; j++) // inmultesc j+1 matrice
for (i = 1 ; i<= n-j ; i++)
for (k = 0 ; k < j ; k++)
a[i][i+j] = min(a[i][i+j], a[i][i+k] + a[i+k+1][i+j] + d[i]*d[i+k+1]*d[i+j+1]);
g<<a[1][n];
}