力扣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;
        
    }
};
相关推荐
9ilk3 分钟前
【分治】--- 快速选择算法
算法
搬砖的小码农_Sky19 分钟前
C语言:树
c语言·开发语言·数据结构
Wils0nEdwards34 分钟前
Leetcode 组合
leetcode
K3njuan44 分钟前
《数据结构》学习系列——图(中)
数据结构·学习·深度优先
終不似少年遊*1 小时前
数学知识1
人工智能·学习·算法·机器学习·数学建模
NiNg_1_2341 小时前
Redis中的数据结构详解
数据结构·数据库·redis
A Runner for leave1 小时前
105.找到冠军
java·数据结构·python·算法·leetcode
Suckerbin2 小时前
PHP 数组数据结构
开发语言·数据结构·php
田梓燊2 小时前
湘潭大学软件工程算法设计与分析考试复习笔记(五)
笔记·算法·软件工程
BIM云平台开发2 小时前
关于return,yield 和 yield return
java·开发语言·数据结构·c#