【贪心算法】柠檬水找零

1.题目解析

860. 柠檬水找零 - 力扣(LeetCode)

2.讲解算法原理

分情况讨论

5---》直接收下

10---》找五元,收下

20----》10+5△

----》5+5+5

由于5元更有用,则尽可能保留5元

3.代码

java 复制代码
class Solution {
    public boolean lemonadeChange(int[] bills) {
        int five=0,ten=0;
        for(int x:bills){
            if(x==5){
                five++;
            }else if(x==10){
                if(five==0){
                    return false;
                }else{
                    five--;
                    ten++;
                }
            }else{
                if(ten!=0&&five!=0){
                    ten--;
                    five--;
                }else if(five>=3){
                    five-=3;
                }else{
                    return false;
                }
            }
        }
        return true;
    }
}

4.证明

证明策略:交换论证法

贪心解:a,b,c,d,e,f

最优解:e,b,c,d,a,f

在不破坏最优解的"最优性质"的前提下,能够将最优解调整成贪心解

相关推荐
Achou.Wang9 小时前
深入理解go语言-第5章 并发编程——Go的灵魂
大数据·算法·golang
The Chosen One98510 小时前
高进度算法模板速记(待完善)
java·前端·算法
土豆.exe12 小时前
Fastjson2 2.0.53 哈希碰撞 RCE:从原理到三种打法
算法·哈希算法
黄河123长江12 小时前
有限Abel群的结构()
算法
Jerry13 小时前
LeetCode 92. 反转链表 II
算法
骊城英雄13 小时前
Rust从入门到精通-trait
人工智能·算法·rust
可编程芯片开发14 小时前
基于PI控制算法的pwm直流电机控制系统Simulink建模与仿真
算法
怕浪猫14 小时前
2840亿参数只卖白菜价:DeepSeek V4 Flash 正式版上线,Agent 能力暴涨6倍
人工智能·算法
让学习成为一种生活方式14 小时前
苄基异喹啉生物碱糖基转移酶UGT74AN1晶体--Journal of Agricultural and Food Chemistry
人工智能·算法
alphaTao14 小时前
LeetCode 每日一题 2026/7/27-2026/8/2
python·算法·leetcode