news 2026/5/30 21:11:22

力扣刷题:文件组合

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣刷题:文件组合

题目:
待传输文件被切分成多个部分,按照原排列顺序,每部分文件编号均为一个 正整数(至少含有两个文件)。传输要求为:连续文件编号总和为接收方指定数字 target 的所有文件。请返回所有符合该要求的文件传输组合列表。

注意,返回时需遵循以下规则:

每种组合按照文件编号 升序 排列;
不同组合按照第一个文件编号 升序 排列。

示例 1:

输入:target = 12
输出:[[3, 4, 5]]
解释:在上述示例中,存在一个连续正整数序列的和为 12,为 [3, 4, 5]。

示例 2:

输入:target = 18
输出:[[3,4,5,6],[5,6,7]]
解释:在上述示例中,存在两个连续正整数序列的和分别为 18,分别为 [3, 4, 5, 6] 和 [5, 6, 7]。

解析:
这道题本质是寻找所有连续的正整数序列,这些序列的和等于给定的 target,序列长度至少为2
我们就可以设置一个滑动窗口来做,通过调整窗口左右边界,寻找和等于 target 的窗口

具体代码:

/** * 找出所有和为target的连续正整数序列 * @param {number} target - 目标和 * @return {number[][]} - 所有符合条件的连续正整数序列数组 */varfileCombination=function(target){// 初始状态:从数字1开始letsum=1// 当前窗口内数字的和,初始为[1]的和letlist=[1]// 滑动窗口,存储当前连续的整数序列letres=[]// 存储所有符合条件的序列// 遍历可能的连续序列// 从2开始,到Math.ceil(target/2)结束// 原因:最小的两个连续整数n和n+1,如果n > target/2,则n+(n+1)>targetfor(leti=2;i<=Math.ceil(target/2);i++){// 窗口向右扩展:将当前数字i加入窗口sum+=i// 更新窗口和list.push(i)// 将i加入窗口末尾// 如果窗口和超过target,需要从左侧收缩窗口// 不断移除窗口中最小的数字,直到窗口和≤targetwhile(sum>target){sum-=list.shift()// 移除窗口最左侧的数字,并更新和}// 检查当前窗口和是否正好等于targetif(sum===target){// 找到符合条件的序列,深拷贝当前窗口并保存res.push([...list])// 使用扩展运算符创建数组副本}}// 返回所有找到的连续序列returnres}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 20:37:48

为什么一定要做Agent?大模型时代的必然选择(建议收藏)

作者通过深入分析、理解、归纳&#xff0c;最后解答了“为什么一定要做Agent”这个问题。 我们团队近一年多的时间一直在服务领域持续构建、深耕Agent能力&#xff0c;在这方面我本人也投入了大量的精力。不过呢&#xff0c;在进行Agent能力落地、推广的过程中&#xff0c;我经…

作者头像 李华
网站建设 2026/5/30 1:10:10

springboot基于java的畅销图书推荐系统

3 系统分析 3.1可行性分析 在开发一个新的软件之前&#xff0c;必须要进行一个系统的可行性研究&#xff0c;以最大限度地利用这个问题。以下我们将从系统&#xff0c;技术&#xff0c;操作、运营、法律等方面来决定该体系的发展[4]。 3.1.1系统可行性分析 利用计算机支持高效率…

作者头像 李华
网站建设 2026/5/30 17:11:33

探索 javaShop:强大的 JAVA 版多用户 B2B2C 商城源码

javaShop JAVA版多用户B2B2C商城源码&#xff08;PCH5小程序APP&#xff09; 友情提示&#xff1a;此源码需要有java基础的开发人员 JAVA版多用户B2B2C商城源码&#xff08;PCH5小程序APP&#xff09; 商城前台&#xff1a; http://buyer.javamall.com.cn 商城后台&#xff1a…

作者头像 李华
网站建设 2026/5/28 17:10:38

【C++笔试题】实现自定义String类中的成员函数

题目&#xff1a;实现自定义String类中的成员函数class MyString { public:MyString(const char* str nullptr);MyString(const MyString& other);MyString& operator(const MyString& other);~MyString();private:char* _str; size_t _length; };重点&#x…

作者头像 李华
网站建设 2026/5/28 20:44:28

springboot基于java的电影评价系统

2系统需求分析 需求分析的首要是要分析用户的需求&#xff0c;知道用户存在的一些情况&#xff0c;并且要明确用户的使用状况&#xff0c;然后设计规划解决的问题。其中在使用定性的分析以及定量的分析&#xff0c;从这两个方面获取用户的需求。一方面定性的分析获得的应该是用…

作者头像 李华
网站建设 2026/5/28 15:07:21

程序员必看!这个被99%开发者忽略的AI核心组件,竟决定了你的RAG系统成败!小白也能从0到1掌握Embedding模型!

“ Embedding模型是自然语言和模型的桥梁。” 了解过RAG技术的人应该都知道Embedding嵌入模型&#xff0c;但很多人可能并没有认真了解过这个核心组件&#xff1b;在大部分人眼中&#xff0c;Embedding模型是一个“不重要”的组件&#xff0c;只需要把文档切分之后&#xff0c;…

作者头像 李华