zoukankan      html  css  js  c++  java
  • LeetCode 860. Lemonade Change (柠檬水找零)

    题目标签:Greedy

      当收到$5 时候,计数 five;

      当收到$10的时候,用 five 来找零;

      当收到$20的时候,先用 ten 来找零,如果没有,再用 five 来找零。

      如果过程中,five 小于 0了,说明不够钱来找零,失败。

    Java Solution:

    Runtime:  2 ms, faster than 81.80% 

    Memory Usage: 42.1 MB, less than 7.69%

    完成日期:02/15/2020

    关键点:设置five, ten 计数

    class Solution {
        public boolean lemonadeChange(int[] bills) {
            int five = 0, ten = 0;
            
            for(int b : bills) {
                if(b == 5) {
                    five++;
                }
                else if(b == 10) {
                    five--;
                    ten++;
                }
                else if(b == 20) {
                    if(ten > 0) { // use ten first
                        ten--;
                        five--;
                    }
                    else {
                        five -= 3;
                    }
                }
                
                if(five < 0)
                    return false;
            }
            
            return true;
        }
    }

    参考资料:LeetCode discuss

    LeetCode 题目列表 - LeetCode Questions List

    题目来源:https://leetcode.com/

  • 相关阅读:
    Vue 中常见性能优化
    简单模板引擎实现
    函数柯理化
    url 解析
    快排
    防抖节流实现
    call、apply、bind 实现
    深克隆
    数组去重
    eventEmitter 简单实现
  • 原文地址:https://www.cnblogs.com/jimmycheng/p/12315578.html
Copyright © 2011-2022 走看看