1339. 最大区间
中文English
给定一个非负数的整数数组,需要选出一个区间, 使得该区间是所有区间中值最大的一个,我们定义一个区间的值为:区间中的最小数 * 区间所有数的和。
样例
样例 1:
输入:[6, 2, 1]
输出:36
解释:所有区间及其对应的值为:
[6] = 6 * 6 = 36;
[2] = 2 * 2 = 4;
[1] = 1 * 1 = 1;
[6,2] = 2 * 8 = 16;
[2,1] = 1 * 3 = 3;
[6, 2, 1] = 1 * 9 = 9;
因此,最大的值为36。
挑战
最直观的算法复杂度是 O(n^2)O(n2) ,请在此基础上优化你的算法。
注意事项
数据范围:1 ≤ len(nums) ≤ 1e6; 0 ≤ nums[n] ≤ 100;