Pagini recente » Cod sursa (job #2129820) | Cod sursa (job #3262604) | Cod sursa (job #2549650) | Cod sursa (job #1107455) | Cod sursa (job #507518)
Cod sursa(job #507518)
#include<stdio.h>
const long long INF =(long long)1<<60;
int n, v[505], i, j, k;
long long a[505][505];
inline long long min (long long a, long long b)
{
if (a<b) return a;
return b;
}
int main()
{
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n+1;i++)
scanf("%d",&v[i]);
for(i=n;i>=1;--i)
for(j=i+1;j<=n;++j)
{
a[i][j]=INF;
for(k=i;k<j;k++)
a[i][j]=min(a[i][j],a[i][k]+a[k+1][j]+(long long)v[i]*(long long)v[k+1]*(long long)v[j+1]);
}
printf("%lld",a[1][n]);
return 0;
}