给你一个由 正 整数组成的数组 nums。
斐波那契 数组是一个连续序列,其中第三项及其后的每一项都等于这一项前面两项之和。
返回 nums 中最长 斐波那契 子数组的长度。
注意: 长度为 1 或 2 的子数组总是 斐波那契 的。
子数组 是数组中 非空 的连续元素序列。
示例 1:
输入: nums = [1,1,1,1,2,3,5,1]
输出: 5
解释:
最长的斐波那契子数组是 nums[2..6] = [1, 1, 2, 3, 5]。
[1, 1, 2, 3, 5] 是斐波那契的,因为 1 + 1 = 2, 1 + 2 = 3, 且 2 + 3 = 5。
示例 2:
输入: nums = [5,2,7,9,16]
输出: 5
解释:
最长的斐波那契子数组是 nums[0..4] = [5, 2, 7, 9, 16]。
[5, 2, 7, 9, 16] 是斐波那契的,因为 5 + 2 = 7 ,2 + 7 = 9 且 7 + 9 = 16。
示例 3:
输入: nums = [1000000000,1000000000,1000000000]
输出: 2
解释:
最长的斐波那契子数组是 nums[1..2] = [1000000000, 1000000000]。
[1000000000, 1000000000] 是斐波那契的,因为它的长度为 2。
提示:
3 <= nums.length <= 1051 <= nums[i] <= 109