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

重庆华鼎达网站建设连云港企业建站 网站

重庆华鼎达网站建设,连云港企业建站 网站,手机版网站制作费用,网络推广公司重诚文章目录 LeetCode 860. 柠檬水找零题解问题描述解题思路关键步骤: 代码实现(C)算法分析示例图解贪心策略的正确性证明边界条件与测试用例总结 LeetCode 860. 柠檬水找零题解 问题描述 在柠檬水摊上,每杯柠檬水售价 5 美元。顾客…

文章目录

      • LeetCode 860. 柠檬水找零题解
        • 问题描述
        • 解题思路
          • 关键步骤:
        • 代码实现(C++)
        • 算法分析
        • 示例图解
        • 贪心策略的正确性证明
        • 边界条件与测试用例
        • 总结

在这里插入图片描述

LeetCode 860. 柠檬水找零题解


在这里插入图片描述

问题描述

在柠檬水摊上,每杯柠檬水售价 5 美元。顾客按顺序支付 5、10 或 20 美元,你需要正确找零(开始时无零钱)。若所有顾客都能成功找零,返回 true,否则返回 false


解题思路

贪心算法是本题的最优解,核心在于优先使用高面额零钱,保留灵活的小面额零钱应对后续找零需求。

关键步骤:
  1. 初始化零钱数量:用 fiveten 分别记录 5 美元和 10 美元的数量。
  2. 遍历账单
    • 收到 5 美元:直接收下,无需找零。
    • 收到 10 美元:需找 5 美元,若无则失败。
    • 收到 20 美元:优先找 10+5 美元的组合,若无则找 3 个 5 美元。若均无法满足,失败。

代码实现(C++)
class Solution {
public:bool lemonadeChange(vector<int>& bills) {int five = 0, ten = 0;for (auto& e : bills) {if (e == 5) {++five;} else if (e == 10) {if (five == 0) return false;--five;++ten;} else {// 优先用 10+5 找零if (five > 0 && ten > 0) {--five;--ten;} else if (five >= 3) {five -= 3;} else {return false;}}}return true;}
};

算法分析
  • 时间复杂度:O(n),仅需遍历一次账单数组。
  • 空间复杂度:O(1),仅用两个变量记录零钱数量。

示例图解

以输入 bills = [5,5,5,10,20] 为例:

顾客支付操作fiveten
15收下 5 美元10
25收下 5 美元20
35收下 5 美元30
410找零 5 美元,收下 10 美元21
520找零 10+5 美元10

最终 five=1, ten=0,成功找零,返回 true


贪心策略的正确性证明
  • 为何优先用 10+5 找零 20 美元?
    5 美元可应对更多场景(如找零 10 美元需 1 张,找零 20 美元需 3 张),而 10 美元只能用于找零 20 美元。优先消耗 10 美元可保留 5 美元的灵活性。

边界条件与测试用例
  1. 首顾客支付非 5 美元:直接失败(如 bills = [10])。
  2. 中途零钱不足:如 [5,5,10,10,20],最后一位顾客需找 15 美元但只剩 10 美元,失败。
  3. 大额支付需组合找零:如 [5,10,20],需正确处理 20 美元的两种找零方式。

总结

本题通过贪心策略,在保证每一步局部最优(保留最多 5 美元)的同时实现全局最优解。关键点在于零钱面额的使用优先级边界条件的处理


http://www.dtcms.com/a/463337.html

相关文章:

  • 张家港做网站的ai建筑设计平台
  • 做资源网站盈利点ps加dw做网站
  • 2014网站seo电商网站设计的企业
  • 中国建设的网站东莞网站建设方案咨询
  • 不用淘宝客api如何做网站wordpress 建站完整视频教程
  • 网站建设的工作总结wordpress网页加载太慢了
  • 甘肃营销型网站建设行业门户网站建设
  • Linux——删除文件夹中的 .DS_Store
  • 推荐软件分类女生做sem还是seo
  • 小题狂做 官方网站建设境外网站
  • linux系统怎么做网站网站建设须知
  • 西安GEO优化专家杨建允:解析AI搜索优化引流的原理和效果
  • 黄页88网站关键词怎么做互联网销售平台
  • 创意网站建设话术做网站公司起什么名字
  • 西安做网站缑阳建企业融资难的原因及对策
  • 手机网站建设创意新颖js弹出网站
  • 企业网站seo怎么做龙华住房和建设局网站
  • 网站建设虍金手指花总注册一家公司需要什么条件
  • 邢台网站建设服务周到微信小程序注册是免费的吗
  • 建网站的成本计算建立音乐网站
  • 科技赋能、服务下沉:中和农信打造普惠三农的创新标杆
  • 网站申请备案成功后怎么建设移动微网站开发
  • 建设网站总结报告大哥商品做网站的目的
  • 邢台移动端网站建设资源网站后台系统
  • 电子商务网站建设程序的开发重庆建工建设工程信息网
  • 绍兴市中等专业学校网站html网站建设源码
  • 每天做任务得钱的网站免费网站建设 免备案
  • 【开题答辩实录分享】以《制造型企业供应商档案管理系统设计与开发》为例进行答辩实录分享
  • 海城网站制作wordpress 发布 软件
  • socket通信 tcp的客户端与服务端,双方能进行收发