860. 柠檬水找零
贪心
class Solution {
public boolean lemonadeChange(int[] bills) {
int five = 0;
int ten = 0;
for (int i = 0; i < bills.length; i++) {
if (bills[i] == 5){
five++;
}
else if (bills[i] == 10){
if (five > 0){
five--;
ten++;
}
else {
return false;
}
}
else {
/**
* 收到20元时,可以找一张10元和一张5元,或者3张5元
*/
if (five > 0 && ten > 0){
five--;
ten--;
}
else if (five >= 3){
five -= 3;
}
else {
return false;
}
}
}
return true;
}
}
/**
* 时间复杂度 O(n)
* 空间复杂度 O(1)
*/