Lemonade Change Lab
Easy
10
55.8% Acceptance
In this lab, you will be working on a problem related to a lemonade stand where each lemonade costs $5
. Customers are standing in a queue to buy from you and order one at a time (in the order specified by bills). Each customer will only buy one lemonade and pay with either a $5
, $10
, or $20
bill. Your task is to provide the correct change to each customer so that the net transaction is that the customer pays $5
.
At the beginning of the day, you have no change in hand. You are given an integer array bills
where bills[i]
is the bill the ith
customer pays. You need to return true
if you can provide every customer with the correct change, or false
otherwise.
Examples
Example 1:
Input: bills = [5,5,5,10,20] Output: true
Explanation:
- From the first 3 customers, we collect three $5 bills in order.
- From the fourth customer, we collect a 5.
- From the fifth customer, we give a 5 bill.
- Since all customers got the correct change, we output true.
Example 2:
Input: bills = [5,5,10,10,20] Output: false
Explanation:
- From the first two customers in order, we collect two $5 bills.
- For the next two customers in order, we collect a 5 bill.
- For the last customer, we cannot give the change of 10 bills.
- Since not every customer received the correct change, the answer is false.
Lab Challenges
- Challenge 1: Write a function
lemonadeChange()
that takes an arraybills
as a parameter and returns a boolean value whether you can provide every customer with the correct change or not. - Challenge 2: Export the
lemonadeChange()
function.