给定一个整数数组 nums,返回 nums 中最长等差子序列的长度。
注意:
0 <= i < seq.length - 1,seq[i + 1] - seq[i] 的值都相同,则称序列 seq 为等差序列。
示例 1:
输入: nums = [3, 6, 9, 12]
输出: 4
解释: 整个数组本身就是一个公差为 3 的等差序列,因此最长等差子序列为 [3, 6, 9, 12],长度为 4。
示例 2:
输入: nums = [9, 4, 7, 2, 10]
输出: 3
解释: 最长等差子序列为 [4, 7, 10](下标分别为 1、2、4),公差为 3。不存在长度为 4 的等差子序列。
示例 3:
输入: nums = [20, 1, 15, 3, 10, 5, 8]
输出: 4
解释: 最长等差子序列为 [20, 15, 10, 5](下标分别为 0、2、4、5),公差为 -5。
提示:
2 <= nums.length <= 15000 <= nums[i] <= 500