当前位置: 首页 > news >正文

【leetcode刷题日记】lc.560-和为 K 的子数组

目录

1.题目

2.代码


1.题目

给你一个整数数组 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

2.代码

class Solution {
public:
    int subarraySum(vector<int>& nums, int k) {
        int ans = 0;
        int pre = 0;
        unordered_map<int,int> mp;
        mp[0] = 1;
        for(int i=0;i<nums.size();i++)
        {
            int tmp =nums[i];
            pre += tmp;
            if(mp.find(pre-k)!=mp.end())
            {
                ans+=mp[pre-k];
            }
            mp[pre]++;
        }
        return ans;
    }
};

相关文章:

  • 深入解析 JVM 内存区域及核心概念
  • 掌握Linux项目自动化构建:从零入门make与Makefile
  • 基于LLM的Agent框架全面比较分析:MGX(MetaGPT X)、AutoGen、OpenHands与秒哒(MiaoDa)
  • [C++面试] span<char>和string_view的差别
  • MySQL数据库入门
  • 【JavaScript】金丹期功法
  • LLM动态Shape实现原理与核心技术
  • 【银河麒麟系统常识】命令:dotnet run(运行)
  • 远程医疗的现状如何?
  • C++ 之 SOCKET 通信详解
  • “自动驾驶背后的数学” 专栏导读
  • 推陈换新系列————java8新特性(编程语言的文艺复兴)
  • 【现代深度学习技术】现代卷积神经网络04:含并行连接的网络(GoogLeNet)
  • 每日总结3.26
  • 算法题(108):
  • IM腾讯Trtc与vod云点播:实现合流录制并上传,根据参数返回视频地址
  • JSON简介及C++中的JSON使用指南
  • LangChain4j(1):初识LangChain4j
  • 【Linux】POSIX信号量与基于环形队列的生产消费者模型
  • ADS 学习和培训资源 - Keysight ADS
  • 中国纪检监察刊文:力戒形式主义官僚主义关键是要坚持实事求是
  • 严打金融黑灰产,今年来上海警方破获各类经济犯罪案件690余起
  • 苏轼“胡为适南海”?
  • 中央宣传部、全国妇联联合发布2025年“最美家庭”
  • 十年磨一剑!上海科学家首次揭示宿主识别肠道菌群调控免疫新机制
  • 国际能源署:全球电动汽车市场强劲增长,中国市场继续领跑