力扣560. 和为 K 的子数组 C++

给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k的子数组的个数

子数组是数组中元素的连续非空序列。

示例 1:

复制代码
输入:nums = [1,1,1], k = 2
输出:2

示例 2:

复制代码
输入:nums = [1,2,3], k = 3
输出:2
cpp 复制代码
class Solution {
public:
    int subarraySum(vector<int>& nums, int k) {
        unordered_map<int,int> f = {{0,1}};

        int res = 0;

        for(int i = 0, s = 0;i < nums.size(); i ++){
            s += nums[i];
            res += f[s - k];
            f[s] ++;
        }

        return res;
        
    }
};
相关推荐
dapeng287035 分钟前
分布式系统容错设计
开发语言·c++·算法
qq_4176950540 分钟前
代码热修复技术
开发语言·c++·算法
Liu628887 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
AI科技星8 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
参.商.8 小时前
【Day41】143. 重排链表
leetcode·golang
条tiao条8 小时前
KMP 算法详解:告别暴力匹配,让字符串匹配 “永不回头”
开发语言·算法
干啥啥不行,秃头第一名8 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
tobias.b9 小时前
计算机基础知识-数据结构
java·数据结构·考研
zzh940779 小时前
Gemini 3.1 Pro 硬核推理优化剖析:思维织锦、动态计算与国内实测
算法
2301_807367199 小时前
C++中的解释器模式变体
开发语言·c++·算法