Para intentar fomentar más ventas de distintos libros de una popular serie de 5 libros, una librería ha decidido ofrecer descuentos en la compra de varios libros.
Un ejemplar de cualquiera de los cinco libros cuesta $8.
Sin embargo, si compras dos libros diferentes, obtienes un 5% de descuento en esos dos libros.
Si compras 3 libros diferentes, obtienes un 10% de descuento.
Si compras 4 libros diferentes, obtienes un 20% de descuento.
Si compras los 5, obtienes un 25% de descuento.
Ten en cuenta que si compras cuatro libros, de los cuales 3 son títulos diferentes, obtienes un 10% de descuento en los 3 que forman parte de un conjunto, pero el cuarto libro sigue costando $8.
Tu misión es escribir código que calcule el precio de cualquier canasta de compras concebible (que contenga solo libros de la misma serie), aplicando el mayor descuento posible.
Por ejemplo, ¿cuánto cuesta esta canasta de libros?
Una forma de agrupar estos 8 libros es:
Esto daría un total de:
Lo que da como resultado:
Lo que equivale a $51.60.
Sin embargo, otra forma de agrupar estos 8 libros es:
Esto daría un total de:
Lo que da como resultado:
Lo que equivale a $51.20.
Y $51.20 es el precio con el mayor descuento.
Define una función, cost, que calcule el costo de una lista de libros dada, según los descuentos definidos.
cost devolverá el costo total (después de los descuentos) en centavos.
Por ejemplo, para un solo libro, el costo es de 800 centavos, que equivalen a $8.00.
Para este ejercicio solo se necesitan cálculos con números enteros.
Regístrate en Exercism para aprender y dominar JavaScript con 37 conceptos159 ejercicios y mentoría humana real, todo gratis.