news 2026/4/18 6:59:01

力扣刷题:文件组合

作者头像

张小明

前端开发工程师

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/4/18 5:42:51

计算机毕业设计springboot基于Java的BS架构物流公共信息平台 基于SpringBoot的Java智慧物流信息共享系统 B/S模式下Java物流综合服务平台的设计与实现

计算机毕业设计springboot基于Java的BS架构物流公共信息平台3nzvbk3r &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。全球贸易的爆发式增长让“货”在天上飞、在地上跑&#xff…

作者头像 李华
网站建设 2026/4/11 15:16:37

基于Python豆瓣电影数据可视化分析设计与实现

收藏关注不迷路&#xff01;&#xff01; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;还有大家在毕设选题&#xff08;免费咨询指导选题&#xff09;&#xff0c;项目以及论文编写等相关问题都可以给我留言咨询&#xff0c;希望帮助更多…

作者头像 李华
网站建设 2026/4/18 5:38:47

springboot基于Java Web的新能源汽车信息咨询服务

3系统分析 3.1 系统需求分析 在当下社会的生活中&#xff0c;互联网已经非常普遍和十分重要。利用好互联网大数据等技术&#xff0c;可以帮助解决很多问题。当下新能源汽车信息咨询方面都面临各自的问题。根据这一常见现象&#xff0c;本新能源汽车信息咨询服务的出现就有很大的…

作者头像 李华
网站建设 2026/4/16 15:15:34

springboot高校网上订餐平台的设计与实现

3 高校网上订餐平台的设计 菜品信息、订单信息是高校网上订餐平台的重要组成部分&#xff0c;信息清晰、详细、准确&#xff0c;能够有效地促进高校网上订餐平台的运行[5]。基础设定函数是对整个系统的总体布局进行合理安排&#xff0c;包括&#xff1a;菜品信息、订单信息、接…

作者头像 李华
网站建设 2026/4/17 12:15:19

电鱼智能 RK3399 赋能双屏异显自助售货机的流畅交互体验

什么是 电鱼智能 EFISH-SBC-RK3399&#xff1f;电鱼智能 EFISH-SBC-RK3399 是一款被誉为“安卓工控机皇”的高性能主板。它搭载 Rockchip RK3399 六核处理器&#xff08;2Cortex-A72 1.8GHz 4Cortex-A53 1.4GHz&#xff09;&#xff0c;集成 Mali-T860 MP4 GPU。作为智能零售…

作者头像 李华
网站建设 2026/4/16 13:58:05

springboot基于Java web的电影院选票系统

第3章 系统分析 为满足用户的需求&#xff0c;本章分析系统开发的可行性&#xff0c;将从技术和操作等方面来判断&#xff0c;然后通过需求分析、系统流程分析来确定电影院选票系统的功能[7]。 3.1 技术可行性分析 电影院选票系统在使用电脑和信息分析系统这些设计没有硬性要…

作者头像 李华