# Lemonade Change Lab

Easy

9

57.1% 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 $10 bill and give back a$5.
- From the fifth customer, we give a $10 bill and 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 $10 bill and give back a$5 bill.
- For the last customer, we cannot give the change of $15 back because we only have two$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 array`bills`

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.