560. 和为 K 的子数组

560. 和为 K 的子数组


题目链接:560. 和为 K 的子数组

代码如下:

cpp 复制代码
class Solution 
{
public:
    int subarraySum(vector<int>& nums, int k) 
    {
        unordered_map<int,int> um;
        um[0]=1;
        int res=0,pre=0;
        for(int i=0;i<nums.size();i++)
        {
            pre+=nums[i];
            if(um.find(pre-k)!=um.end())//找到了
            {
                res+=um[pre-k];
            }
            um[pre]++;
        }
        return res;
    }
};
相关推荐
蒸蒸yyyyzwd27 分钟前
秋招学习笔记 day46
c++·八股
码匠许师傅4 小时前
【C++三方组件】cpp-httplib:一个头文件起 HTTP 服务
开发语言·c++·http
无名猿5 小时前
new/delete 与 malloc/free:为什么绝对不能混用
c++·内存管理·现代c++·踩坑记录
2601_962218616 小时前
C++中decltype关键字的实现
开发语言·c++
繁华的地方不一定留下你的脚印7 小时前
C++ std::variant 与 std::visit:安全保存多种类型,写清每个处理分支
开发语言·c++
程序员老陆7 小时前
WIN32_LEAN_AND_MEAN:Windows 头文件里的“精简编译开关”
c++·windows
hold?fish:palm8 小时前
45 二叉树的右视图
开发语言·c++·算法
ShineWinsu9 小时前
对于Redis:Redis的认识以及分布式系统的解析
linux·数据库·c++·redis·缓存·消息队列·分布式架构
布莱克6059 小时前
在C++中,构造函数能不能是虚函数?析构函数为什么要虚?
开发语言·c++·构造函数·析构函数·虚函数
旖旎夜光9 小时前
LeetCode 137 : 只出现一次的数字 II(位运算) —— 题解
c++·笔记·学习·算法·leetcode·力控