一、力扣 860. 柠檬水找零
1. 题目解析
题意可理解为:每位顾客按顺序购买柠檬水,价格固定为 5 元。你需要根据收到的账单顺序正确找零。
需要注意几个关键点:
- 初始时你没有任何现金,如果第一位顾客给的不是 5 元,直接无法找零。
- 必须确保当前顾客能正常找零,否则立即返回失败,无需继续处理后续订单。
- 顾客支付的面额只有 5 元、10 元和 20 元三种。
2. 算法原理

3. 代码
class Solution {
int[] change;
public boolean lemonadeChange(int[] bills) {
if (bills[0] != 5) {
return false;
}
change = new int[2];
for (int i = 0; i < bills.length; i++) {
if (bills[i] == 5) {
change[0]++;
} else if (bills[i] == 10) {
if (change[0] != 0) {
change[0]--;
change[1]++;
} else {
;
}
} {
(change[] != && change[] != ) {
change[]--;
change[]--;
} (change[] >= ) {
change[] -= ;
} {
;
}
}
}
;
}
}



