1

Lee  •  10小时前


include <bits/stdc++.h>

using namespace std; int dp[401][401]; int a[401]; int n;

int main() {

cin >> n;
for (int i = 1; i <= n; i++) {
	cin >> a[i];
	a[i + n] = a[i];
}
memset(dp, 0xf0, sizeof dp);
for (int i = 1; i <= 2 * n; i++) {
	dp[i][i + 1] = 0;
}
for (int len = 3; len <= n + 1; len++) {
	for (int left = 1, right = len; right <= 2 * n; left++, right++) {
		for (int mid = left + 1; mid < right; mid++) {
			dp[left][right] = max(dp[left][right], dp[left][mid] + dp[mid][right] + a[left] * a[mid] * a[right]);
		}
	}
}
int ans = 0;
for (int i = 1; i <= n; i++) {
	ans = max(ans, dp[i][n + i]);
}
cout << ans;
return 0;

}


评论:

请先登录,才能进行评论