Banca de limonada

Em uma banca de limonada, cada limonada custa $5. Os clientes estão em uma fila para comprar de você e fazem seus pedidos um de cada vez (na ordem especificada por bills).

Cada cliente comprará apenas uma limonada e pagará com uma nota de $5, $10 ou $20. Você deve dar o troco correto a cada cliente para que, ao final da transação, ele pague $5.

Retorne true se, e somente se, você conseguir dar o troco correto a todos os clientes.

Exemplos

lemonade([5, 5, 5, 10, 20]) ➞ true

lemonade([5, 5, 10, 10, 20]) ➞ false

lemonade([10, 10]) ➞ false

lemonade([5, 5, 10]) ➞ true

Notas

  • No início, você não tem nenhum troco.
  • bills é um array de inteiros.
  • bills[i] será 5, 10 ou 20.