Pagini recente » Cod sursa (job #1891061) | Cod sursa (job #3277721) | Cod sursa (job #3166187) | Cod sursa (job #3172951) | Cod sursa (job #1654703)
#include <bits/stdc++.h>
using namespace std;
int n;
long long d[501],m[501][501];
void read()
{
scanf("%d ",&n);
for(int i=0; i<n*2; i++)
scanf("%lld ", &d[i]);
}
void algoritm()
{
for(int diag = 1; diag<=n-1; diag++)
{
for(int i = 1; i<=n-diag; i++)
{
int long long row = i;
int long long col = diag + i;
if(row!=col)
{
long long mini = 999999999999999;
for(int k=row; k<col; k++)
{
long long x = m[row][k] + m[k+1][col] + d[row-1] * d[k] * d[col];
if(x<mini)
mini = x;
}
m[row][col] = mini;
}
}
}
cout<<m[1][n];
}
int main()
{
freopen("podm.in","r",stdin);
freopen("podm.out","w",stdout);
read();
algoritm();
return 0;
}