LeetCode Hot Code —— 和为K的子数组

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

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

示例 1:

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

示例 2:

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

提示:

  • 1 <= nums.length <= 2 * 104

  • -1000 <= nums[i] <= 1000

  • -107 <= k <= 107

    class Solution {
    public:
    // 前缀和
    int subarraySum(vector& nums, int k)
    {
    int ans = 0;
    vector arr(nums.size(), 0);
    arr[0] = nums[0];
    map<int, int> tu;
    for (int i = 1; i < nums.size(); i++)
    {
    arr[i] = arr[i - 1] + nums[i];
    }
    for (int i = 0; i < nums.size(); i++)
    {
    if (arr[i] == k)
    {
    ans++;
    }
    int num = arr[i] - k;
    if (tu.count(num) == 1)
    {
    ans += tu[num];
    }
    tu[arr[i]]++;

    复制代码
      }
      return ans;

    }
    };

相关推荐
硅谷秋水5 小时前
Qwen-VLA:跨任务、环境与机器人形态的视觉-语言-动作统一建模
人工智能·深度学习·算法·计算机视觉·语言模型·机器人
IronMurphy6 小时前
【算法五十六】84. 柱状图中最大的矩形
算法
fie88896 小时前
matlab打靶法求解两点边值优化问题
开发语言·算法·matlab
hai3152475436 小时前
结构化编程:AI工业化编程的探索
数据结构·自然语言处理·硬件工程·动态规划·集成学习
不做无法实现的梦~6 小时前
常见工程分析软件
stm32·嵌入式硬件·算法
2401_868534786 小时前
2026年5月系统分析
数据结构·python·tornado
hetao17338376 小时前
2026-05-28~06-02 hetao1733837 的刷题记录
c++·算法
ZhengEnCi6 小时前
O08-单写线程与单读线程冲突分析
算法
仍然.7 小时前
算法题目---优先级队列
算法
一个爱编程的人7 小时前
图的相关概念
c++·算法·图论