题目描述
题目描述
题解
题解
提交记录
提交记录
中等

给定一个整数数组 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 <= 1500
  • 0 <= nums[i] <= 500
 
代码
代码
测试用例
测试用例
测试结果
测试结果