Bailian4040 买书问题
程序员文章站
2022-04-01 20:43:00
...
4040:买书问题
总时间限制: 1000ms 内存限制: 65536kB
描述
某网上书店举行优惠促销,现有两种优惠策略。策略一是购书总额大于100元的可享受免费送货。策略二是如果购书数量大于3本,则购书总额享受95折优惠(不包括运费)。两种优惠策略不能同时享受,最多可选择其中一种优惠策略。运费为20元。小明想在这个网站上买书,请帮他选择最优的优惠策略。
输入
有多行,第一行是买书的种类N(0 <= N <= 100),接下来的N行每行输入一种书目的购买数量M和代价P(P不一定是整数)。当N为-1时结束输入
输出
针对每组数据,分析如何享受优惠策略,输出最少的购书支付金额
样例输入
2
2 60
3 50
-1
样例输出
270
问题链接:Bailian4040 买书问题
问题简述:(略)
问题分析:简单题不解释。
程序说明:(略)
参考链接:(略)
题记:(略)
AC的C++语言程序如下:
/* Bailian4040 买书问题 */
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int n;
while(cin >> n && n != -1) {
int m, cnt = 0;
double p, money = 0;
while(n--) {
cin >> m >> p;
cnt += m;
money += m * p;
}
double ans = money;
if(money <= 100) money += 20;
if(cnt > 3) ans = ans * 0.95 + 20;
else ans += 20;
ans = min(ans, money);
cout << ans << endl;
}
return 0;
}
上一篇: Fruit Slicer
下一篇: Bailian2693 最远距离