Pagini recente » Cod sursa (job #1751564) | Cod sursa (job #1604101) | Cod sursa (job #3160670) | Cod sursa (job #658267) | Cod sursa (job #370310)
Cod sursa(job #370310)
# include <cstdio>
using namespace std;
# define FIN "podm.in"
# define FOUT "podm.out"
# define min(a, b) ((a) < (b) ? (a) : (b))
# define MAX_N 500
# define INF 100000000000000000LL
int N, i, j, k;
long long D[MAX_N];
long long Op[MAX_N][MAX_N];
int main()
{
freopen(FIN, "r", stdin);
freopen(FOUT, "w", stdout);
scanf("%d", &N);
for (i = 1; i <= N + 1; ++i) scanf("%d", &D[i]);
for (j = 1; j < N; ++j)
for (i = 1; i + j <= N; ++i)
{
Op[i][i + j] = INF;
for (k = i; k < i + j; ++k)
Op[i][i + j] = min(Op[i][i + j], Op[i][k] + Op[k + 1][i + j] + D[i] * D[k + 1] * D[i + j + 1]);
}
printf("%lld", Op[1][N]);
return 0;
}