leetcode 860. 柠檬水找零

2023.8.1

简单的一个思路就是建一个大小为3的数组change ,用于存储剩余的零钱,然后遍历账单,每次找零钱的时候判断一下是否有足够的零钱,不够的话直接返回false。 能坚持到结束遍历则返回true。 代码如下:

cpp 复制代码
class Solution {
public:
    bool lemonadeChange(vector<int>& bills) {
        int change[2] = {0};
        for(int i=0; i<bills.size(); i++)
        {
            if(bills[i] == 5)
            {
                change[0]++;
            }
            else if(bills[i] == 10)
            {
                if(change[0])
                {
                    change[0]--;
                    change[1]++;
                } 
                else return false;
            }
            else
            {
                if(change[0] && change[1])
                {
                    change[0]--;
                    change[1]--;
                }
                else if(change[0] >= 3)
                {
                    change[0] -= 3;
                }
                else return false;
            }
        }
        return true;
    }
};
相关推荐
Nil2088 分钟前
leetcode 54螺旋矩阵
算法·leetcode·矩阵
依然鸣1 小时前
PTA团体程序设计天梯赛L1真题讲解L1-077-080
开发语言·c++·算法·深度优先·pat考试·图论
库玛西3 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试
liulilittle3 小时前
无锁并发容器的设计与实现原理
开发语言·c++·set·map·并发·无锁·lock-free
qeen874 小时前
【数据结构】自平衡二叉搜索树各种旋转算法原理解析及AVL树的C++实现
数据结构·c++·算法
lucas_AI4 小时前
1.2B 小模型赢过 235B 大模型:NaviDC-OCR 把文档解析卷明白了
人工智能·深度学习·算法
Augustzero4 小时前
为什么线程不能说睡就睡?看懂等待与唤醒机制
c++·后端
程序员与背包客_CoderZ4 小时前
Linux D-Bus通信协议详解:从入门到C/C++编码实战
linux·服务器·c语言·c++·嵌入式硬件·嵌入式软件·dbus
冻柠檬飞冰走茶5 小时前
PTA基础编程题目集 7-35有理数均值(C++语言实现)
开发语言·数据结构·c++·算法·均值算法
wangchen_05 小时前
C++正则表达式
开发语言·c++·正则表达式