Pagini recente » Cod sursa (job #935010) | Cod sursa (job #1320456) | Cod sursa (job #16774) | Cod sursa (job #774731) | Cod sursa (job #377980)
Cod sursa(job #377980)
#include <stdio.h>
#define ll long long
#define NMAX 1<<9
#define INF 666666666666666LL
int n,d[NMAX];
ll best[NMAX][NMAX];
void read()
{
scanf("%d",&n);
int i;
for (i=1; i<=n+1; i++)
scanf("%d",&d[i]);
}
void solve()
{
int i,j,k;
ll nr;
for (i=1; i<n; i++)
for (j=1; j<=n-i; j++)
{
best[j][j+i]=INF;
for (k=j; k<j+i; k++)
{
nr=best[j][k]+best[k+1][j+i]+(ll)d[j]*d[k+1]*d[j+i+1];
if (best[j][j+i]>nr)
best[j][j+i]=nr;
}
}
}
int main()
{
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
read();
solve();
printf("%lld\n",best[1][n]);
return 0;
}