10 和为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思路1滑动窗口1、检查参数的合法性2、循环数组nums从0到nums.size()-1记下标为i定义满足次数的变量_count0。3、循环下标i到0的累加和nums[i]nums[i-1]、nums[i]nums[i-1]nums[i-2]....... nums[inums[i-1]nums[i-2]nums[0]。判断累加和是否有满足和等于k的。4、满足条件k1,不满足条件忽略最后返回_count。class Solution { public: int subarraySum(vectorint nums, int k) { if(nums.empty()) return 0; int _count0; for(int i0;inums.size();i){ int _sum0; for(int ji;j0;j--){ _sumnums[j]; if(_sumk) _count; } } return _count; } }; //写法2 class Solution { public: int subarraySum(vectorint nums, int k) { int nnums.size(); if(n0) return 0; int _ans0; for(int i0;in;i){ int _sum0; for(int ji;jn;j){ _sumnums[j]; if(_sumk) _ans; } } return _ans; } };思路2官方解法我们定义 pre[i] 为 [0..i] 里所有数的和则 pre[i] 可以由 pre[i−1] 递推而来即pre[i]pre[i−1]nums[i] 那么「[j..i] 这个子数组和为 k 这个条件我们可以转化为pre[i]−pre[j−1]k 简单移项可得符合条件的下标 j 需要满足pre[j−1]pre[i]−k步骤1、检查参数的合法性定义一个hash表key是pre[i]value是出现的次数。2、循环数组nums计算每一个的pre[i],然后查找hash表中是否存在k-pre[i]这个值3、若存在则count若不存在则跳过。4、把pre[i]插入hash表中。5、循环结束返回count。class Solution { public: int subarraySum(vectorint nums, int k) { if(nums.empty()) return 0; unordered_mapint,int hash; int _count0; int _sum0; hash[0]1; for(int i0;inums.size();i) { _sumnums[i]; unordered_mapint,int::iterator ithash.find(_sum-k); if(ithash.end()){ hash[_sum]; continue; } _counthash[_sum-k]; hash[_sum]; } return _count; } };推荐一个零声教育学习教程个人觉得老师讲得不错分享给大家[LinuxNginxZeroMQMySQLRedisfastdfsMongoDBZK流媒体CDNP2PK8SDockerTCP/IP协程DPDK等技术内容点击立即学习:链接

相关新闻

初次接触大模型API,通过Taotoken快速完成第一个对话调用

初次接触大模型API,通过Taotoken快速完成第一个对话调用

初次接触大模型API,通过Taotoken快速完成第一个对话调用 如果你对人工智能大模型感到好奇,想亲手尝试调用它们的能力,但又被复杂的配置和多样的服务商搞得无从下手,那么这篇文章就是为你准备的。我们将完全从零开始,使…

2026/7/25 15:25:21 阅读更多 →
Java面试30天突击:AI Agent与RAG实战项目全解析

Java面试30天突击:AI Agent与RAG实战项目全解析

这次我们来看一个专门为 Java 开发者准备的“突击面试”学习攻略。如果你正在准备 7 月份的 Java 面试,面对 AI 大模型、场景题、八股文、Java 基础、并发编程、JVM、MySQL、Spring 等一系列庞杂的知识点感到焦虑,那么这个整合了 30 天学习路径和实战项目…

2026/7/25 15:25:21 阅读更多 →
ARM GIC中断路由配置实战:从寄存器解析到Linux与裸机应用

ARM GIC中断路由配置实战:从寄存器解析到Linux与裸机应用

1. 从手册到实战:理解GIC中断路由的核心价值在嵌入式系统开发,尤其是基于ARM架构的多核处理器项目中,中断管理是决定系统实时性、稳定性和性能上限的基石。我接触过不少项目,初期对中断配置掉以轻心,结果在系统负载上来…

2026/7/25 15:25:21 阅读更多 →

最新新闻

89 年 IT 人,37 岁,摸索两年,终于不再担心裁员|35 岁遭遇优化后的突围经验(普通人能够借鉴)

89 年 IT 人,37 岁,摸索两年,终于不再担心裁员|35 岁遭遇优化后的突围经验(普通人能够借鉴)

89 年 IT 人,37 岁,摸索两年,终于不再担心裁员|35 岁遭遇优化后的突围经验(普通人能够借鉴) 刷到的朋友,估计也是35到45岁、被行业淘汰的那批人。面对生活压力,打开招聘软件才发现&…

2026/7/25 15:38:27 阅读更多 →
DeepSeek-V4-Flash-cc 全新低价上线,7.9 折特惠,DMXAPI 聚合平台随心用,国产模型越来越好

DeepSeek-V4-Flash-cc 全新低价上线,7.9 折特惠,DMXAPI 聚合平台随心用,国产模型越来越好

DeepSeek-V4-Flash-cc专属优化版模型全新低价上线,定制化轻量化架构、极速运算能力全面升级,同时开放7.9 折专属特惠。依托DMXAPI 聚合平台可随心调用该模型,体验持续优化、越来越好的国产 AI 模型实力。DeepSeek-V4-Flash-cc 三大核心优势一…

2026/7/25 15:38:27 阅读更多 →
35 岁计算机从业者待业在家,我察觉到:身边存在不少创收途径,很多人却只想着上班打工

35 岁计算机从业者待业在家,我察觉到:身边存在不少创收途径,很多人却只想着上班打工

35 岁计算机从业者待业在家,我察觉到:身边存在不少创收途径,很多人却只想着上班打工 35岁计算机失业后才想明白,很多同行一辈子只盯着上班打工,白白浪费手里的技术优势。普通开发岗早已饱和内卷,加班多、薪…

2026/7/25 15:38:27 阅读更多 →
速度标杆 DeepSeek-V4-Flash 降价!DMXAPI同步接入,亲眼见证国产 AI 持续崛起

速度标杆 DeepSeek-V4-Flash 降价!DMXAPI同步接入,亲眼见证国产 AI 持续崛起

DeepSeek-V4-Flash作为国产 AI 领域的速度标杆,以极速响应、高效运算、稳定输出著称,是业内公认的轻量化高性能模型。本次模型正式降价,入驻DMXAPI 聚合平台即可独享 7.9 折福利,亲身见证国产 AI 技术持续崛起的发展态势。DeepSee…

2026/7/25 15:38:27 阅读更多 →
Windows上3分钟安装Android应用:APK-Installer终极指南

Windows上3分钟安装Android应用:APK-Installer终极指南

Windows上3分钟安装Android应用:APK-Installer终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 还在为Windows电脑无法直接运行Android应用而烦恼吗…

2026/7/25 15:38:27 阅读更多 →
泉盛UV-K5/K6对讲机终极改造指南:解锁专业通信的完整教程

泉盛UV-K5/K6对讲机终极改造指南:解锁专业通信的完整教程

泉盛UV-K5/K6对讲机终极改造指南:解锁专业通信的完整教程 【免费下载链接】uv-k5-firmware-custom 全功能泉盛UV-K5/K6固件 Quansheng UV-K5/K6 Firmware 项目地址: https://gitcode.com/gh_mirrors/uvk5f/uv-k5-firmware-custom 想让你的泉盛UV-K5/K6对讲机…

2026/7/25 15:37:27 阅读更多 →

日新闻

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的…

2026/7/25 0:00:35 阅读更多 →
C++ string类模拟实现:从深拷贝到内存管理的完整指南

C++ string类模拟实现:从深拷贝到内存管理的完整指南

1. 项目概述:为什么我们要“手撕”string类?在C的学习道路上,尤其是从C语言过渡到C的“初阶”阶段,string类绝对是一个绕不开的核心。标准库里的std::string用起来太方便了,、find、substr,几个操作符和函数…

2026/7/25 0:00:35 阅读更多 →
三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

1. 先搞清楚“三角洲寻宝鼠”到底是什么工具从名称来看,“三角洲寻宝鼠”更像是一个资源查找或文件检索类工具,而不是游戏或娱乐软件。这类工具的核心价值在于帮助用户快速定位特定资源,比如文档、图片、压缩包或特定格式的文件。如果你经常需…

2026/7/25 0:00:35 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/25 5:08:22 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/25 5:13:53 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻