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;
    }
};
相关推荐
大白的编程日记.16 分钟前
【C++笔记】C++编译器拷贝优化和内存管理
java·开发语言·c++·笔记
CrazyZ1261 小时前
c++primer第九章内存模型和名称空间学习笔记
c++·笔记·学习
小灰灰爱代码2 小时前
C++——将数组a[5]={-1,2,9,-5,7}中小于0的元素置成0。并将其结果输出(要求:用数组名作为函数的参数来实现)
数据结构·c++·算法
冰红茶兑滴水2 小时前
Linux 线程互斥
linux·c++
咩咩大主教5 小时前
Linux下的简单TCP客户端和服务器
linux·服务器·c语言·开发语言·c++·tcp/ip·网络编程
玄【学生党】5 小时前
【c++】介绍
开发语言·c++
polebugzhuzhu6 小时前
7-50 畅通工程之局部最小花费问题 (kruskal)
c++·算法·图论
玉蜉蝣6 小时前
PAT甲级-1083 List Grades
c++·算法·list·pat甲
ephemerals__6 小时前
【c++】STL简介
开发语言·c++
UestcXiye6 小时前
Leetcode16. 最接近的三数之和
c++·leetcode·排序·双指针·数据结构与算法