413. Arithmetic Slices
来源:互联网 发布:python serial 模块 编辑:程序博客网 时间:2024/06/06 08:54
- 题目描述
- 题意分析
- 算法分析
- 具体实现
- 复杂度分析
题目描述
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, 9
7, 7, 7, 7
3, -1, -5, -9
The following sequence is not arithmetic.
1, 1, 2, 5, 7
A 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.
题意分析
找出数组中所有个数≥3的等差数列的个数.
算法分析
一开始想着数出数组中连续的等差数列的长度len, 再将这些len对应的子数组个数
具体实现
class Solution { public: int numberOfArithmeticSlices(vector<int>& A) { if (A.size() < 3) return 0; int dp = 0, result = 0; for (int i = 2; i < A.size(); i ++) { if (A[i] - A[i - 1] == A[i - 1] - A[i - 2]) dp += 1; else dp = 0; result += dp; } return result; }};
复杂度分析
时间
空间
- 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
- 通过scrapy爬取京东商品
- java SE day15火推
- Java 数据结构_树
- 11月7日笔记
- mybatis中mapUnderscoreToCamelCase自动驼峰命名转换
- 413. Arithmetic Slices
- HashMap加入数据后,会自动根据首字母排序
- react进阶之异常处理机制-error Boundaries
- Python 字典(Dictionary)
- DELL 服务器启动出现NO boot device availabel解决方法
- 大数据浪潮下 你也可以转型大数据工程师!
- win 10 opencv dubeg 应用程序无法正常启动0xc00007b
- 数据库自动化运维平台--自助建表建库
- Glide加载圆形image第一次显示占位图的解决方法