Pagini recente » Cod sursa (job #1763864) | Rating Sabau Eduard (SabaUEduarD21) | Cod sursa (job #1151298) | Cod sursa (job #2066964) | Cod sursa (job #2023896)
#include <iostream>
#include <cstdio>
using namespace std;
int vCit[505],n;
long long dp[505][505];
const long long inf=LONG_LONG_MAX;
void citire()
{
scanf("%d",&n);
for(int i=0;i<=n;i++)
scanf("%d",&vCit[i]);
}
long long minK(int a,int b)
{
long long r=inf;
for(int k=a;k<=b;k++)
{
r=min(r,dp[a][k]+dp[k+1][b+1]+vCit[a-1]*vCit[k]*vCit[b+1]);
}
return r;
}
void dinamica()
{
for(int c=2;c<=n;c++)
for(int i=1,j=c;j<=n;i++,j++)
dp[i][j]=minK(i,j-1);
}
int main()
{
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
citire();
dinamica();
printf("%lld",dp[1][n]);
return 0;
}