leetcode 446 等差数列划分 II - 子序列

如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,以下数列为等差数列:
1 | 1, 3, 5, 7, 9 |
以下数列不是等差数列。
1 | 1, 1, 2, 5, 7 |
数组 A 包含 N 个数,且索引从 0 开始。该数组子序列将划分为整数序列 $(P_0, P_1, …, P_k)$,P 与 Q 是整数且满足 $0 ≤ P_0 < P_1 < … < P_k < N$。
如果序列 $A[P_0],A[P_1],…,A[P_{k-1}],A[P_k]$ 是等差的,那么数组 A 的子序列$ (P_0,P_1,…,P_K)$ 称为等差序列。值得注意的是,这意味着 k ≥ 2。
函数要返回数组 A 中所有等差子序列的个数。
输入包含 N 个整数。每个整数都在 $-2^{31}$ 和 $2^{31-1}$ 之间,另外 0 ≤ N ≤ 1000。保证输出小于 $2^{31-1}$。
示例:
1 | 输入: [2, 4, 6, 8, 10] |
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/arithmetic-slices-ii-subsequence
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
1 | class Solution(object): |