Pagini recente » Cod sursa (job #1127555) | Cod sursa (job #1235281) | Cod sursa (job #1920472) | Cod sursa (job #1143054) | Cod sursa (job #813226)
Cod sursa(job #813226)
#include<fstream>
using namespace std;
ifstream fin("inmultiri.in");
ofstream fout("inmultiri.out");
int v[1000], n;
long long int a[1000][1000];
int minim(int x,int y);
void pd();
void afisare();
int main()
{
int i;
fin >> n;
for(i=0;i<=n;i++)
fin >> v[i];
pd();
fout << a[1][n] << endl;
fout.close();
return 0;
}
void pd()
{
int i, j, k;
for(i=1;i<=n;i++)
a[i][i]=0;
for(i=1;i<=n-1;i++)
a[i][i+1]=v[i-1]*v[i]*v[i+1];
for(j=1;j<=n-1;j++)
for(i=1;i<=n-j;i++)
for(k=i;k<=j-1;k++)
a[i][j]=minim(a[i][j],a[i][k]+a[k+1][j]+v[i-1]*v[k]*v[j]);
}
int minim( int x ,int y)
{
if(x<y)
return x;
return y;
}