[LeetCode Daily Question] [Simple] 860. Change lemonade

[LeetCode Daily Question] [Simple] 860. Change lemonade

860. Lemonade Change

860. Lemonade Change

Algorithm idea: array

topic:

Insert picture description here

java code

Simulate the change process

class Solution {
    
    
    //模拟法
    public boolean lemonadeChange(int[] bills) {
    
    
        int five = 0;//5块钱数量
        int ten = 0;//10块钱数量
		int n = bills.length;
		for (int i = 0; i < n; i++) {
    
    
			if (bills[i] == 5) {
    
    //如果是5块,直接收下
				five++;
			}
			if (bills[i] == 10) {
    
    //如果是10块,收下的同时,要找零5块
				ten++;
				five--;
			}
			if (bills[i] == 20) {
    
    //如果是10块,收下的同时,要找零15块
                if(ten > 0){
    
    //如果有10块,优先找10块
                    ten--;//找10块
				    five--;//找5块
                }else{
    
    
                    five -= 3;//如果没有10块,找3个5块
                }
			}
            if (five < 0 || ten < 0) {
    
    //判断是否能成功找零
				return false;
			}
		}
		return true;
    }
}

Guess you like

Origin blog.csdn.net/qq_39457586/article/details/110951354