Instruções
Determina corretamente o menor número de moedas a dar a um cliente, de modo que a soma do valor das moedas seja igual ao troco correto.
Por exemplo
- Uma entrada de 15 com [1, 5, 10, 25, 100] deve devolver uma moeda de 5 e uma moeda de 10, ou [5, 10]
- Uma entrada de 40 com [1, 5, 10, 25, 100] deve devolver uma moeda de 5, uma moeda de 10 e uma moeda de 25, ou [5, 10, 25]
Casos limite
- O teu algoritmo funciona para qualquer conjunto de moedas?
- Podes pedir troco negativo?
- Podes pedir um valor de troco inferior ao valor da moeda mais pequena?