C++ | Leetcode C++题解之第560题和为K的子数组

题目:

题解:

cpp 复制代码
class Solution {
public:
    int subarraySum(vector<int>& nums, int k) {
        unordered_map<int, int> mp;
        mp[0] = 1;
        int count = 0, pre = 0;
        for (auto& x:nums) {
            pre += x;
            if (mp.find(pre - k) != mp.end()) {
                count += mp[pre - k];
            }
            mp[pre]++;
        }
        return count;
    }
};
相关推荐
梁下轻语的秋缘8 分钟前
每日c/c++题 备战蓝桥杯(P2241 统计方形(数据加强版))
c语言·c++·蓝桥杯
学习编程的gas2 小时前
C++面向对象编程入门:从类与对象说起(一)
开发语言·c++
Bear on Toilet3 小时前
Bug日记——实现“日期类”
开发语言·c++·bug
apcipot_rain3 小时前
《面向对象程序设计-C++》实验五 虚函数的使用及抽象类
开发语言·c++
zhczzm5 小时前
深入浅出之STL源码分析2_stl与标准库,编译器的关系
c++
Darkwanderor7 小时前
c++STL-string的模拟实现
c++·string
南风与鱼7 小时前
【数据结构】红黑树(C++)
c++·红黑树
李匠20247 小时前
C++GO语言微服务和服务发现②
开发语言·c++·golang·服务发现
虾球xz8 小时前
游戏引擎学习第271天:生成可行走的点
c++·学习·游戏引擎
qq_433554548 小时前
C++ STL编程 vector空间预留、vector高效删除、vector数据排序、vector代码练习
开发语言·c++