救救我吧
查看原帖
救救我吧
1361688
gold_boy_hetao楼主2025/8/2 22:48
#include <bits/stdc++.h>
using namespace std;
int n;
int a[210];
int dp[210][210];
int maxn = -0x3f;
int main()
{
	cin >> n;
	//memset(dp,-0x3f,sizeof(dp));
	for (int i = 1;i <= n;i++)
	{
		cin >> a[i];
		a[n + i] = a[i];
		dp[i][i] = 0;
	}
	for (int len = 1;len < n;len++)
	{
		for (int l = 1;l + len <= n * 2;l++)
		{
			int r = l + len;
			for (int k = l;k <= r - 1;k++)
			{
				dp[l][r] = max(dp[l][r],dp[l][k] + dp[k + 1][r] + a[l] * a[r] * a[k]);
				maxn = max(maxn,dp[l][r]);
			}
		}
	}
	cout << maxn;
	return 0;
}

感觉这辈子OI也不会学出成就了

2025/8/2 22:48
加载中...