柠檬水找零【贪心算法-】

  1. 柠檬水找零
    在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。

每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。

注意,一开始你手头没有任何零钱。

给你一个整数数组 bills ,其中 bills[i] 是第 i 位顾客付的账。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。

java 复制代码
class Solution {//分三种类型的进行分类5,10,20
    public boolean lemonadeChange(int[] bills) {
        int five = 0;
        int ten = 0;
        for (int i = 0; i < bills.length; i++) {
            if (bills[i] == 5) {
                five++;
            } else if (bills[i] == 10) {
                    ten++;
                    five--;
            } else if (bills[i] == 20) {
                if (ten > 0) {
                    ten--;
                    five--;
                } else {
                    five -= 3;
                }
            }
            if (five < 0 || ten < 0) return false; //每轮的最后判断是否出现找零不够的情况
        }
        return true;
    }
}
相关推荐
wfeqhfxz25887824 分钟前
YOLO13-C3k2-GhostDynamicConv烟雾检测算法实现与优化
人工智能·算法·计算机视觉
Aaron158835 分钟前
基于RFSOC的数字射频存储技术应用分析
c语言·人工智能·驱动开发·算法·fpga开发·硬件工程·信号处理
_不会dp不改名_2 小时前
leetcode_3010 将数组分成最小总代价的子数组 I
算法·leetcode·职场和发展
你撅嘴真丑4 小时前
字符环 与 变换的矩阵
算法
早点睡觉好了4 小时前
重排序 (Re-ranking) 算法详解
算法·ai·rag
gihigo19984 小时前
基于全局自适应动态规划(GADP)的MATLAB实现方案
算法
ctyshr5 小时前
C++编译期数学计算
开发语言·c++·算法
zh_xuan5 小时前
最小跳跃次数
数据结构·算法
yumgpkpm5 小时前
2026软件:白嫖,开源,外包,招标,晚进场(2025年下半年),数科,AI...中国的企业软件产业出路
大数据·人工智能·hadoop·算法·kafka·开源·cloudera
孞㐑¥6 小时前
算法—队列+宽搜(bfs)+堆
开发语言·c++·经验分享·笔记·算法