Pagini recente » Cod sursa (job #973859) | Cod sursa (job #1654557) | Cod sursa (job #3192718) | Cod sursa (job #177542) | Cod sursa (job #1424004)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("podm.in");
ofstream out("podm.out");
int n, a[503], d[502][502];
int main()
{
int i, j, k, x;
in >> n;
for ( i = 0; i <= n; i++ )
in >> a[i];
for ( i = n; i >= 0; i-- )
{
for ( j = i+1; j <= n; j++ )
{
k = i;
d[i][j] = d[i][k] + d[k+1][j] + a[i]*a[k+1]*a[j+1];
for ( k = i+1; k < j; k++ )
{
x = d[i][k] + d[k+1][j] + a[i]*a[k+1]*a[j+1];
if ( d[i][j] > x )
d[i][j] = x;
}
d[i][i] = 0;
}
}
out << d[0][n-1];
return 0;
}