Pagini recente » Cod sursa (job #2087524) | Cod sursa (job #1453271) | Cod sursa (job #1534263) | Cod sursa (job #1881251) | Cod sursa (job #2279064)
#include<fstream>
#include<iostream>
using namespace std;
ifstream fin("podm.in");
ofstream fout("podm.out");
long long int d[510],c[510][510],n,i ;
long long int solve(long long int i, long long int j)
{
long long int x=1000000000000000000,k;
if(i==j)
return 0;
if(c[i][j])
return c[i][j];
for(k=i;k<j;k++)
{
x=min(x,solve(i,k)+solve(k+1,j)+d[i]*d[k+1]*d[j+1]);
}
c[i][j]=x;
return x;
}
int main()
{
fin>>n;
for(i=1;i<=n+1;i++)
fin>>d[i];
fout<<solve(1,n);
fin.close();
fout.close();
return 0;
}