Pagini recente » Cod sursa (job #2776801) | Cod sursa (job #2656139) | Cod sursa (job #2519773) | Cod sursa (job #406758) | Cod sursa (job #433008)
Cod sursa(job #433008)
#include <cstdio>
using namespace std;
#define nmax 503
#define ll long long
FILE *f=fopen("podm.in","r");
FILE *g=fopen("podm.out","w");
long long d[nmax],M[nmax][nmax];
int n;
inline ll min(ll a,ll b)
{
if(a==-1||b<a)
return b;
return a;
}
int main()
{
int i,j,k;
fscanf(f,"%d",&n);
for(i=1;i<=n+1;i++)
fscanf(f,"%lld",&d[i]);
for(j=2;j<=n;j++)
for(i=j-1;i>=1;i--)
{
M[i][j]=-1;
for(k=i;k<j;k++)
M[i][j]=min(M[i][j],M[i][k]+M[k+1][j]+d[i]*d[k+1]*d[j+1]);
}
fprintf(g,"%lld",M[1][n]);
return 0;
}