問題描述:
在節假日的時候,書店一般都會做**活動。由於《哈利波特》系列相當暢銷,店長決定通過**活動來回饋讀者。在銷售的《哈利波特》平裝本系列中, 一共有五 卷,用編號0, 1, 2, 3, 4來表示。假設每一捲單獨銷售均需要8歐元。如果讀者一次購買不同的兩卷,就可以扣除5%的費用,三卷則更多。假設具體折扣的情況如下:
本數 折扣
2 5%
3 10%
4 20%
5 25%
在乙份訂單中,根據購買的卷數以及本書,就會出現可以應用不同折扣規則的情況。但是,一本書只會應用乙個折扣規則。比如,讀者一共買了兩本卷一, 一本卷二。那麼,可以享受到5%的折扣。另外一本卷一則不能享受折扣。如果有多種折扣,希望能夠計算出的總額盡可能的低。要求根據這樣的需求,設計出算 法,能夠計算出讀者所購買一批書的最低**。
設計思路:
當我們試著把具體的數字算出來之後,會發現一些規律:當總數超過10本之後那麼它們的優惠選擇方案與1至10本之間一樣。小於5本不用說,6本劃分為5+1,7為5+2,8為4+4,9為5+4,10為5+5。
在個數不為8的情況下:先5本5本考慮,剩下的格外一起考慮。
個數為8的情況下:總數減去8之外為5的整數按5本打折,剩下的8本按4+4.
具體實現:
#includeusing實驗結果:namespace
std;
void
main()
else
cout
<< "
最合理的**為:
"<< price <
}
最優買書問題
1.題目 書店針對 哈利波特 系列書籍進行 活動,一共5卷,用編號0 1 2 3 4表示,單獨一捲售價8元,具體折扣如下所示 本數 折扣 2 5 3 10 4 20 5 25 根據購買的卷數以及本數,會對應不同折扣規則情況。單數一本書只會對應乙個折扣規則,例如購買了兩本卷1,一本卷2,則可以享受5 ...
買書最低價格
1 題目 n書店針對 哈利波特 系列書籍進行 活動,一共5卷,用編號0 1 2 3 4表示,單獨一捲售價8元,具體折扣如下所示 本數 2,折扣5 本數 3,折扣10 本數4 折扣20 本數5,折扣25 根據購買的卷數以及本數,會對應不同折扣規則情況。單數一本書只會對應乙個折扣規則,例如購買了兩本卷1...
《哈利波特》買書最優惠演算法
書店針對 哈利波特 系列書籍進行 活動,一共5卷,用編號0 1 2 3 4表示,單獨一捲售價8元,具體折扣如下所示 本數 折扣 2 5 3 10 4 20 5 25 根據購買的卷數以及本數,會對應不同折扣規則情況。單數一本書只會對應乙個折扣規則,例如購買了兩本卷1,一本卷2,則可以享受5 的折扣,另...