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;
    }
};
相关推荐
Nil2088 小时前
leetcode 763划分字母区间
算法·leetcode·职场和发展
不会就选b8 小时前
算法日常・每日刷题--<动态规划>20
算法·leetcode·动态规划
别动我齐刘海9 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
程序员老陆9 小时前
C++ std::promise深度解析
c++·程序设计
青少儿编程课堂9 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
不会就选b10 小时前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
沫璃染墨11 小时前
《Qt从零入门系列(十三):QSS样式表详解——从选择器与层叠规则到控件美化实战》
开发语言·css·c++·qt·ui·qt6.3·qss
垆边人似月.11 小时前
华为机试题 :和为 K 的子数组个数
算法·leetcode·华为
夏幻灵12 小时前
每日一题:LeetCode 165:比较版本号
算法·leetcode·职场和发展
道尔柯南12 小时前
C++ 面向对象编程入门:类和对象(上)
开发语言·c++·算法