Pagini recente » Cod sursa (job #909605) | Cod sursa (job #2881062) | Cod sursa (job #3234457) | Borderou de evaluare (job #171916) | Cod sursa (job #507521)
Cod sursa(job #507521)
#include<stdio.h>
#include<stdlib.h>
long long a[600][600],x[600],n,q,i;
long long inf = (long long)(1)<<59;
int main()
{
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
scanf("%lld",&n);
for(i=1;i<=n+1;i++)
scanf("%lld",&x[i]);
int i,j,k;
for(i=n;i>=1;--i)
for(j=i+1;j<=n+1;j++)
{
a[i][j] = (long long)inf;
for(k=i;k<j;++k)
{
q = a[i][k] + a[k+1][j] + x[i]*x[k+1]*x[j+1];
if(a[i][j] > q)
a[i][j] = q;
}
}
printf("%lld",a[1][n]);
return 0;
}