美文网首页
860. 柠檬水找零(Swift实现)

860. 柠檬水找零(Swift实现)

作者: 溪石iOS | 来源:发表于2019-01-10 10:23 被阅读56次

Swift 的实现还是太少,记录下自己的练习
题目见LeetCode
条件:

  • 面额 不是 5 就是 10 或是 20
  • 每一杯[柠檬水]的售价为 5 元
  • 开始手上没有任何钞票
    思路:
    1.开辟三个变量记录拥有的钞票数
    2.给5元,5元钞票数++,通过,继续下一个
    3.给10元,拥有的钞票数只要有一张5元的,通过,继续下一个
    4.给了20元,先把10元的钞票退出去(10元钞票只能用于20元的找零),然后退一张5元的;没有10元就退三张5元。
class Solution {
    func lemonadeChange(_ bills: [Int]) -> Bool {
        var b5 = 0
        var b10 = 0
        var b20 = 0
        for b in bills {
            switch b {
            case 5:
                b5 += 1
                
            case 10:
                if b5 > 0 {
                    b10 += 1
                    b5 -= 1
                } else {
                    return false
                }
                
            case 20:
                if b10 > 0 {
                    b10 -= 1
                    if b5 > 0 {
                        b5 -= 1
                        b20 += 1
                    } else {
                        return false
                    }
                } else {
                    if b5 >= 3 {
                        b5 -= 3
                        b20 += 1
                    } else {
                        return false
                    }
                }
            default:
                return false
            }
        }
        return true
    }
}

相关文章

  • 每日一题20201210(860. 柠檬水找零)

    860. 柠檬水找零[https://leetcode-cn.com/problems/lemonade-chan...

  • 860. 柠檬水找零(Swift实现)

    Swift 的实现还是太少,记录下自己的练习题目见LeetCode条件: 面额 不是 5 就是 10 或是 20 ...

  • LeetCode 860. 柠檬水找零

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

  • 每日一题-860. 柠檬水找零

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

  • 一起学算法-860. 柠檬水找零

    一、题目 LeetCode-860. 柠檬水找零地址:https://leetcode-cn.com/proble...

  • 柠檬水找零

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

  • 柠檬水找零

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

  • Leetcode PHP题解--D99 860. Lemonad

    D99 860. Lemonade Change 题目链接 860. Lemonade Change 题目分析 这...

  • 【LeetCode】柠檬水找零

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

  • Day 65: 柠檬水找零

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

网友评论

      本文标题:860. 柠檬水找零(Swift实现)

      本文链接:https://www.haomeiwen.com/subject/ahporqtx.html