news 2026/3/8 15:33:53

记力扣LCP28.采购方案 练习理解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
记力扣LCP28.采购方案 练习理解

小力将 N 个零件的报价存于数组nums。小力预算为target,假定小力仅购买两个零件,要求购买零件的花费不超过预算,请问他有多少种采购方案。

注意:答案需要以1e9 + 7 (1000000007)为底取模,如:计算初始结果为:1000000008,请返回1

思路:
因为只需要买两个零件考虑到只需要计算两个数值的和是否在预算以内即可,故而采用双指针的办法,依次判断之和是否满足条件即可。最后结果对1000000007取余即可(因为可能零件和预算变大之后方法也会变多)。主要难理解的可能是其中判断依据排序后为什么是right-left是一个数学问题,他如果最小的和最大的和满足题意,等价于一个搭配问题,两个两个取能取几次,是个排列问题,他的次数为最右边的序数减去最左边的序数就是次数。

class Solution: def purchasePlans(self,nums:List[int],target:int)->int: left,right=0,len(nums)-1 count=0 nums.sort() while left<right: if nums[left]+nums[right]<=target: count+=right-left left+=1 else: right-=1 return count%1000000007

难点分析:

  1. 排序保证了 “单调性”:左指针固定时,右指针往左的所有数都更小,因此和左指针的和也更小;
  2. 双指针的 “贪心”:找到最大的合法右指针,就能覆盖所有更小的右指针的合法情况;
  3. 计数的 “数学本质”:left+1right的元素个数 = 终止索引 - 起始索引 =right - left(起始索引是 left+1,终止索引是 right → 个数 = right - (left+1) + 1 = right - left)。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/3 2:04:16

Coze智能体开发:Coze Studio快速开始

环境要求 在参考本文安装 Coze Studio 之前&#xff0c;确保您的软硬件环境满足以下要求&#xff1a; 项目说明CPU2 CoreRAM4 GiBDocker提前安装 Docker、Docker Compose&#xff0c;并启动 Docker 服务&#xff0c;详细操作请参考 Docker 文档&#xff1a; * macOS&#xff…

作者头像 李华
网站建设 2026/3/6 12:18:56

DataCap开源数据集成平台快速部署完整指南

DataCap开源数据集成平台快速部署完整指南 【免费下载链接】datacap DataCap 是数据转换、集成和可视化的集成软件。支持多种数据源&#xff0c;文件类型&#xff0c;大数据相关数据库&#xff0c;关系型数据库&#xff0c;NoSQL 数据库等。通过软件可以实现管理多种数据源&…

作者头像 李华
网站建设 2026/3/7 2:50:59

智能动画库架构演进:2025年性能突破与生态重构

智能动画库架构演进&#xff1a;2025年性能突破与生态重构 【免费下载链接】react-move 项目地址: https://gitcode.com/gh_mirrors/rea/react-move React-Move作为数据驱动动画领域的技术演进典范&#xff0c;在生态整合与性能突破方面展现出独特价值。该库通过精巧的…

作者头像 李华
网站建设 2026/3/5 12:31:26

5个LÖVE游戏交互优化技巧:打造沉浸式玩家体验

5个LVE游戏交互优化技巧&#xff1a;打造沉浸式玩家体验 【免费下载链接】love LVE is an awesome 2D game framework for Lua. 项目地址: https://gitcode.com/gh_mirrors/lo/love LVE作为一款轻量级2D游戏框架&#xff0c;为开发者提供了丰富的Lua接口来构建出色的游戏…

作者头像 李华
网站建设 2026/3/4 23:30:56

如何打造永不充电的智能日历?ESP32墨水屏项目全解析

如何打造永不充电的智能日历&#xff1f;ESP32墨水屏项目全解析 【免费下载链接】portal_calendar A Portal themed e-ink calendar based on the ESP32 platform 项目地址: https://gitcode.com/gh_mirrors/po/portal_calendar 你是否曾经梦想过拥有一款永远不需要充电…

作者头像 李华
网站建设 2026/3/5 18:12:05

FaceFusion能否用于法庭证据重建?司法领域可行性讨论

FaceFusion能否用于法庭证据重建&#xff1f;司法领域可行性讨论 在一场深夜抢劫案的监控录像中&#xff0c;嫌疑人戴着口罩、帽子&#xff0c;面部仅露出一小部分轮廓。画面模糊&#xff0c;分辨率低得连眼睛形状都难以辨认。警方想通过人脸识别锁定身份&#xff0c;但算法返回…

作者头像 李华