Pagini recente » Cod sursa (job #3229495) | Cod sursa (job #2205295) | Cod sursa (job #615773) | Cod sursa (job #503501) | Cod sursa (job #1643680)
# include <fstream>
using namespace std;
ifstream fin ("podm.in");
ofstream fout ("podm.out");
long long DP[505][505];
int main()
{
int n;
long long d[505];
fin>>n;
for (int i=1; i<=n+1; i++)
fin>>d[i];
for (int i=1; i<=n-1; i++)
DP[i][i+1]=d[i]*d[i+1]*d[i+2];
for (int k=2; k<=n-1; k++)
for (int i=1; i<=n-k; i++)
{
long long Min=1<<17;
for (int j=i; j<=i+k-1; j++)
{
Min=min(Min, DP[i][j]+DP[j+1][i+k]+d[i]*d[j+1]*d[i+k+1]);
}
DP[i][i+k]=Min;
}
fout<<DP[1][n];
return 0;
}