leetcode560.和为k的子数组

前缀和+哈希表

cpp 复制代码
class Solution {
public:
    int subarraySum(vector<int>& nums, int k) {
        int result=0;
        int pre=0;
        unordered_map<int,int> map;
        map[0]=1;//模拟测试用例1[1,1,1],k=2可知
        for(const int& num:nums){
            pre+=num;
            if(map.find(pre-k)!=map.end())
                result+=map[pre-k];
            map[pre]++;
        }
        return result;
    }
};
相关推荐
一叶祇秋2 小时前
Leetcode - 周赛446
算法·leetcode·职场和发展
rigidwill6662 小时前
LeetCode hot 100—分割等和子集
数据结构·c++·算法·leetcode
JPC客栈4 小时前
LeetCode面试经典 150 题(Java题解)
java·leetcode·面试
冠位观测者5 小时前
【Leetcode 每日一题】781. 森林中的兔子
数据结构·算法·leetcode
@蓝莓果粒茶8 小时前
LeetCode第158题_用Read4读取N个字符 II
前端·c++·python·算法·leetcode·职场和发展·c#
旷野本野10 小时前
【LeetCode】嚼烂热题100【持续更新】
算法·leetcode
一杯咖啡Miracle12 小时前
代码随想录算法训练营第三十五天|416. 分割等和子集、698.划分为k个相等的子集、473.火柴拼正方形
数据结构·python·算法·leetcode
刃神太酷啦14 小时前
栈和队列--数据结构初阶(2)(C/C++)
c语言·数据结构·c++·算法·leetcode
王齐家04061 天前
每日一题算法——移除链表元素、反转链表
数据结构·算法·leetcode·链表
SsummerC1 天前
【leetcode100】一和零
开发语言·python·leetcode·动态规划