Hogy egy népszerű, ötkötetes sorozat különböző könyveiből több példányt adjon el, egy könyvesbolt úgy döntött, hogy kedvezményt ad, ha valaki több könyvet vásárol.
Az öt könyv bármelyikének egy példánya $8-ba kerül.
Ha viszont két különböző könyvet veszel, akkor arra a két könyvre 5% kedvezményt kapsz.
Ha 3 különböző könyvet veszel, 10% kedvezményt kapsz.
Ha 4 különböző könyvet veszel, 20% kedvezményt kapsz.
Ha mind az 5-öt megveszed, 25% kedvezményt kapsz.
Vedd figyelembe, hogy ha négy könyvet veszel, amelyek közül 3 különböző cím, akkor arra a 3-ra, amelyek egy készletet alkotnak, 10% kedvezményt kapsz, a negyedik könyv ára viszont továbbra is $8.
A feladatod, hogy olyan kódot írj, amely kiszámítja bármely elképzelhető bevásárlókosár árát (amelyben csak ugyanannak a sorozatnak a könyvei vannak), a lehető legnagyobb kedvezményt alkalmazva.
Például mennyibe kerül ez a könyvkosár?
Ezt a 8 könyvet az egyik lehetséges módon így csoportosíthatod:
Ez a következő végösszeget adná:
Az eredmény:
Ez összesen $51.60.
Ezt a 8 könyvet viszont másképp is csoportosíthatod:
Ez a következő végösszeget adná:
Az eredmény:
Ez összesen $51.20.
A legnagyobb kedvezményt adva pedig az ár $51.20.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Raku nyelvet 94 feladat segítségével, valódi emberi mentorálással, mindez ingyen.