如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列。

例如,以下数列为等差数列:

1, 3, 5, 7, 9
7, 7, 7, 7
3, -1, -5, -9

以下数列不是等差数列。

1, 1, 2, 5, 7

数组 A 包含 N 个数,且索引从0开始。数组 A 的一个子数组划分为数组 (P, Q),P 与 Q 是整数且满足 0<=P<Q<N 。

如果满足以下条件,则称子数组(P, Q)为等差数组:

元素 A[P], A[p + 1], ..., A[Q - 1], A[Q] 是等差的。并且 P + 1 < Q 。

函数要返回数组 A 中所有为等差数组的子数组个数。

示例:

A = [1, 2, 3, 4]返回: 3, A 中有三个子等差数组: [1, 2, 3], [2, 3, 4] 以及自身 [1, 2, 3, 4]。

对于一个等差数列数组S,其长度为N,则其等差数组的子数组个数:SUM = 1 + 2 + ... + (N - 2)

class Solution:def numberOfArithmeticSlices(self, A):""":type A: List[int]:rtype: int"""n = len(A)if n < 3:return 0dp = [0] * nfor i in range(2,n):if A[i]-A[i-1] == A[i-1]-A[i-2]:dp[i] = dp[i-1] + 1return sum(dp)

-------------------------------------------------------------------------------------------------------------------------------------

更多题目包括leetcode、牛客网、各种排序算法解法参见个人GitHub,持续更新中,欢迎star ~~

https://github.com/PemLer/Journey_of_leetcode

-------------------------------------------------------------------------------------------------------------------------------------

Leetcode 413. 等差数列划分(python)相关推荐

  1. leetcode - 413. 等差数列划分

    413. 等差数列划分 -------------------------------------------- 如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列. 例如 ...

  2. 等差数列java_Java实现 LeetCode 413 等差数列划分

    413. 等差数列划分 如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列. 例如,以下数列为等差数列: 1, 3, 5, 7, 9 7, 7, 7, 7 3, -1, - ...

  3. Java实现 LeetCode 413 等差数列划分

    413. 等差数列划分 如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列. 例如,以下数列为等差数列: 1, 3, 5, 7, 9 7, 7, 7, 7 3, -1, - ...

  4. Leetcode 413.等差数列划分

    Time: 20190906 Type: Medium 题目描述 以下数列不是等差数列. 1, 1, 2, 5, 7 数组 A 包含 N 个数,且索引从0开始.数组 A 的一个子数组划分为数组 (P, ...

  5. LeetCode 413 等差数列划分

    题目描述 如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列. 例如,以下数列为等差数列: 1, 3, 5, 7, 9 7, 7, 7, 7 3, -1, -5, -9 以 ...

  6. [leetcode] 413. 等差数列划分

    一开始想得是这题应该是用动态规划来做,但是没写出来 下面的都是leetcode上的代码: https://leetcode-cn.com/problems/arithmetic-slices/solu ...

  7. leetcode 413. 等差数列划分

    如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列. 例如,以下数列为等差数列: 1, 3, 5, 7, 9 7, 7, 7, 7 3, -1, -5, -9 以下数列不是 ...

  8. 2022-4-18 Leetcode 413. 等差数列划分

    class Solution {public:int numberOfArithmeticSlices(vector<int>& nums) {int n = nums.size( ...

  9. LeetCode 413. 等差数列划分(DP)

    1. 题目 一个数列的等差数列子数组有多少个. A = [1, 2, 3, 4]返回: 3, A 中有三个子等差数组: [1, 2, 3], [2, 3, 4] 以及自身 [1, 2, 3, 4]. ...

最新文章

  1. 栈(Stack) 任何程序执行前,预先分配一固定长度的内存空间
  2. 使用js设置ul标签的显示或隐藏和超链接调用js文件的方法
  3. 面向对象(方法的形式参数)
  4. php手机端多图预览上传,JS实现多图预览上传的实例代码
  5. 蛮力法在排序算法中的应用(JAVA)--选择排序、冒泡排序
  6. 对命令行程序调用及其结果显示的一点补充
  7. Mac IDEA解决Maven项目命令行报错:command not found: mvn
  8. ASP.NET Core的身份认证框架IdentityServer4--(5)自定义用户登录(通过接口登录,无UI版本)...
  9. ActiveMQ 权限
  10. HDU1370 Biorhythms【中国剩余定理】
  11. 面向对象11:向下转型的使用、instanceof关键字、Object类的使用
  12. C语言程序——math库的函数应用
  13. 思科模拟器cisco模拟器
  14. 利用计算机进行导弹轨道计算,超级计算机为何被称为大国重器?可模拟核试验或测算弹道导弹轨迹!...
  15. 移远4g LTE模块at指令集合
  16. Vue之assets图片加载不出来
  17. 详解 WebRTC 高音质低延时的背后 — AGC(自动增益控制)
  18. chmod +x 与chmod 777 的超详细解说
  19. 机器学习:单词拼写纠正器python实现
  20. linux桌面环境日志,小白的Linux桌面环境的配置手记

热门文章

  1. Visual Modflow
  2. MPLAB X IDE v6.00_项目属性(Projiect Properties)_无法更改设置
  3. 接地电阻测试仪常用的5种接线方法介绍
  4. 防止WannaCrypt病毒之windows 2012 R2补丁安装
  5. 《UnityAPI.AudioClip音频剪辑》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+AudioClip+loadInBackground+立钻哥哥++OK++)
  6. 电脑如何设置定时任务,定时执行
  7. C++之spriintf函数(itoa函数)
  8. HTML怎么CSS表格嵌套,CSS#/ HTML5 Chrome中的嵌套表格和子填充
  9. java获取阿里邮箱收件箱、发件箱、草稿箱、已删除邮件、垃圾邮件
  10. 关于iebook的使用心得