Para tentar incentivar mais vendas de livros diferentes de uma popular série de 5 livros, uma livraria decidiu oferecer descontos na compra de vários livros.
Um exemplar de qualquer um dos cinco livros custa $8.
No entanto, se comprares dois livros diferentes, tens 5% de desconto nesses dois livros.
Se comprares 3 livros diferentes, tens 10% de desconto.
Se comprares 4 livros diferentes, tens 20% de desconto.
Se comprares os 5, tens 25% de desconto.
Nota: se comprares quatro livros, dos quais 3 são títulos diferentes, tens 10% de desconto nos 3 que fazem parte de um conjunto, mas o quarto livro custa na mesma $8.
A tua missão é escrever código que calcule o preço de qualquer cesto de compras imaginável (que contenha apenas livros da mesma série), dando o maior desconto possível.
Por exemplo, quanto custa este cesto de livros?
Uma forma de agrupar estes 8 livros é:
Isto daria um total de:
O que dá:
Para um total de $51.60
No entanto, há outra forma de agrupar estes 8 livros:
Isto daria um total de:
O que dá:
Para um total de $51.20
E $51.20 é o preço com o maior desconto.
Inscreve-te no Exercism para aprenderes e dominares Delphi Pascal com 76 exercícios, e mentoria humana real, tudo grátis.