413. Arithmetic Slices
来源:互联网 发布:c语言不合理的地方 编辑:程序博客网 时间:2024/06/05 16:06
A sequence of number is called arithmetic if it consists of at least three elements and if the difference between any two consecutive elements is the same.For example, these are arithmetic sequence:1, 3, 5, 7, 97, 7, 7, 73, -1, -5, -9The following sequence is not arithmetic.1, 1, 2, 5, 7A zero-indexed array A consisting of N numbers is given. A slice of that array is any pair of integers (P, Q) such that 0 <= P < Q < N.A slice (P, Q) of array A is called arithmetic if the sequence:A[P], A[p + 1], ..., A[Q - 1], A[Q] is arithmetic. In particular, this means that P + 1 < Q.The function should return the number of arithmetic slices in the array A.Example:A = [1, 2, 3, 4]return: 3, for 3 arithmetic slices in A: [1, 2, 3], [2, 3, 4] and [1, 2, 3, 4] itself.
- 此题解法比较简单,找到以A[i]为结尾的最大等差数列(A[j],…,A[i]),即可计算出i到j之间所有的等差子数列数目dp[i]。以次再找出A[j-1]之前的等差子序列数目dp[j-1]。然后将得出的数目进行相加即可得到结果。
class Solution {public: int combinationN_3(int n){ return (n-2)*(n-1)/2; } int numberOfArithmeticSlices(vector<int>& A) { vector<int> dp(A.size(),0); int n = A.size(); int sum = 0; if(n <= 2){ return 0; } for(int i = 2; i < n; ++i ){ if((A[i] - A[i-1]) == (A[i-1] - A[i-2])){ dp[i] = dp[i-1] + 1; } } for(int i = n-1;i>=2;){ if(dp[i]>0){ sum += combinationN_3(dp[i]+2); i = i - (dp[i]+2); }else{ i--; } } return sum; }};
阅读全文
0 0
- 413. Arithmetic Slices
- [LeetCode]413.Arithmetic Slices
- Leetcode 413. Arithmetic Slices
- Leetcode-413. Arithmetic Slices
- 413. Arithmetic Slices
- 413. Arithmetic Slices
- 【LeetCode】413. Arithmetic Slices
- 413. Arithmetic Slices
- Leetcode-413. Arithmetic Slices
- 413. Arithmetic Slices
- 413. Arithmetic Slices
- 413. Arithmetic Slices
- 413. Arithmetic Slices
- LeetCode 413. Arithmetic Slices
- 413. Arithmetic Slices 【M】
- 413. Arithmetic Slices
- Leetcode 413. Arithmetic Slices
- 413. Arithmetic Slices
- Java 编程思想(五)Java泛型
- C#设计模式
- Linux kernel panic解决方法
- HTTP请求中的form data和request payload的区别
- 运算符知识点
- 413. Arithmetic Slices
- 多个sql语句嵌套查询
- lliunx 系统 图片服务器fastdfs 安装和测试
- HDU 6208 ac自动机 hash sam 后缀数组
- html--页面超链接<a>标签
- elasticsearch客户端大全
- 设计模式六大原则
- Mybatis出现Type interface XXXMapper is not known to the MapperRegistry.的解决办法。
- 【Others】解决Sublime3中无法输入中文