为了鼓励人们更多地购买某套热门系列丛书(该系列共有 5 本)中的不同书籍,一家书店决定,对一次购买多本书的顾客提供折扣。
五本书中任意一本的单价都是 $8。
不过,如果你买两本不同的书,这两本能享受 5% 的折扣。
如果买 3 本不同的书,能享受 10% 的折扣。
如果买 4 本不同的书,能享受 20% 的折扣。
如果 5 本全买,能享受 25% 的折扣。
注意,如果你买了 4 本,其中 3 本是不同的书名,那么能组成一个套组的这 3 本可以享受 10% 的折扣,但第四本仍然是 $8。
你的任务是编写代码,计算任意一个可能出现的购物篮的价格(其中只包含同一系列的书籍),并尽可能给出最大的折扣。
例如,下面这个购物篮里的书要多少钱?
对这 8 本书的一种分组方式是:
这样总共是:
结果是:
总计 $51.60。
不过,这 8 本书还有另一种分组方式:
这样总共是:
结果是:
总计 $51.20。
而 $51.20 就是折扣最大的价格。
定义一个函数 cost,根据规定的折扣计算给定书籍数组的费用。
cost 返回折扣后的总费用,单位为美分。例如,单本书的费用为 800 美分,即 $8.00。这个练习只需要整数运算。