给你一个整数数组 nums。
如果不存在三个 互不相同 的下标 i、j 和 k,满足 l <= i, j, k <= r 且:
nums[i] + nums[j] == nums[k]则子数组 nums[l..r] 是 有效 子数组。
返回 nums 中有效子数组的 最大 长度。
子数组 是数组中一个连续 非空 元素序列。
示例 1:
输入: nums = [2,3,5,3,2,1]
输出: 3
解释:
考虑子数组 [3, 5, 3]。由不同下标处的元素组成的数对,其元素和如下:
3 + 5 = 83 + 3 = 6,这里使用的是两个不同位置上的 35 + 3 = 8这些和都不等于剩余下标处的元素,因此该子数组是有效的。
每个长度为 4 的子数组都包含位于不同下标处的 2、3 和 5,并且 2 + 3 = 5。因此,不存在更长的有效子数组,答案为 3。
示例 2:
输入: nums = [3,4,5,6]
输出: 4
解释:
由不同下标处的任意两个元素相加,得到的和分别为 7、8、9、9、10 和 11。这些值都不等于剩余下标处的元素,因此整个数组都是有效的。
提示:
1 <= nums.length <= 10001 <= nums[i] <= 500