【力扣】【好题】560.和为k的子数组 || 前缀和

添加链接描述

python 复制代码
class Solution:
    def subarraySum(self, nums: List[int], k: int) -> int:
        sum=0
        res=0
        dict={}
        dict[0]=1
        for num in nums:
            sum=sum+num
            if sum-k in dict:
                res+=dict[sum-k]
            if sum in dict:
                dict[sum]+=1
            else:
                dict[sum]=1
        return res

思路:

  1. 利用前缀和的思想
  2. sum用来计算从下标0的元素,到下标问为x的元素的和
  3. 使用字典,记录钱x项有多少个结果
  4. 所需要的组数就是目前的加和sum减去目标k后剩下的数出现的次数,这个数在字典里找
  5. B站搜前缀和就是将这道题
相关推荐
小虎牙00717 小时前
RSA 的核心原理
算法
重生之后端学习17 小时前
56. 合并区间
java·数据结构·后端·算法·leetcode·职场和发展
历程里程碑18 小时前
C++ 5:模板初阶
c语言·开发语言·数据结构·c++·算法
leoufung18 小时前
LeetCode 74. Search a 2D Matrix
数据结构·算法·leetcode
Kiri霧18 小时前
Go数据类型介绍
java·算法·golang
Mxsoft61919 小时前
AR远程定位偏差救场!某次现场故障,SLAM算法精准对齐设备模型!
算法·ar
Hello娃的19 小时前
【量子力学】Hohenberg-Kohn 定理
人工智能·算法
老马啸西风19 小时前
成熟企业级技术平台 MVE-010-IGA(Identity Governance & Administration,身份治理与管理)平台
人工智能·深度学习·算法·职场和发展
老马啸西风19 小时前
成熟企业级技术平台 MVE-010-app 管理平台
人工智能·深度学习·算法·职场和发展