LeetCode 2874. 有序三元组中的最大值 II
原题链接
中等
作者:
我是java同学
,
2023-10-01 17:32:00
,
所有人可见
,
阅读 66
class Solution {
public:
typedef long long LL;
long long maximumTripletValue(vector<int>& nums) {
int n = nums.size();
vector<int> suf_max(n + 1, 0);
for (int i = n - 1; i >= 0; i -- )
suf_max[i] = max(suf_max[i + 1], nums[i]);
vector<int> pre_max(n + 1, 0);
pre_max[0] = nums[0];
for (int i = 1; i < n; i ++ )
pre_max[i] = max(pre_max[i - 1], nums[i]);
LL res = 0;
for (int j = 1; j < n - 1; j ++ )
res = max(res, (LL)(pre_max[j - 1] - nums[j]) * suf_max[j + 1]);
return res;
}
};