首页 > 其他 > 详细

leetcode860. 柠檬水找零

时间:2020-12-11 14:16:59      阅读:21      评论:0      收藏:0      [点我收藏+]

解题思路

硬模拟

代码

class Solution {
    public boolean lemonadeChange(int[] bills) {
        HashMap<Integer, Integer> m = new HashMap<>();
        m.put(5, 0);
        m.put(10, 0);
        m.put(20, 0);
        for (int i = 0; i < bills.length; i++) {
            if (bills[i] == 5) {
                m.put(5, m.get(5) + 1);
            } else if (bills[i] == 10) {
                if (m.get(5) <= 0) return false;
                else {
                    m.put(5,m.get(5)-1);
                    m.put(10, m.get(10) + 1);
                }
            } else if (bills[i] == 20) {
                if (!(m.get(5) >= 3 || (m.get(5) >= 1 && m.get(10) >= 1))) return false;
                else {
                    if (m.get(10) >= 1 && m.get(5) >= 1) {
                        m.put(10, m.get(10) - 1);
                        m.put(5, m.get(5) - 1);
                    }else{
                        m.put(5,m.get(5)-3);
                    }
                    m.put(20,m.get(20)+1);
                }
            }
        }
        return true;
    }
}

leetcode860. 柠檬水找零

原文:https://www.cnblogs.com/void-white/p/14119345.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!