专栏文章
B4341 [语言月赛 202506] 票价计算
B4341题解参与者 2已保存评论 1
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mip2i2ei
- 此快照首次捕获于
- 2025/12/03 05:05 3 个月前
- 此快照最后确认于
- 2025/12/03 05:05 3 个月前
Source & Knowledge
2024 年 6 月语言月赛,由洛谷网校入门计划/基础计划提供。
题目大意
给定三班通勤车的票价与运行时间,以及每提前一分钟的奖金金额。已知最慢的一班车正好在 9:00 到达。请选择一班车,使得最终花费(票价减去奖金)最少。
题目分析
本题考察基础算术运算与条件判断。设:
- 每班车的票价分别为 ;
- 运行时间分别为 ;
- 每提前一分钟可获得奖金 。
由于最慢的车刚好在 9:00 到达,运行时间最长的那班车的时间 可作为统一参考时间。
若选择某一班车 ,其到达时间为 ,则比最慢车早到 分钟,所获得奖金为 。于是其最终花费为:
我们分别计算三辆车的最终花费,选出最小值所对应的车。如果有多个车花费相同,取编号最小的即可。
核心计算逻辑:
CPPint T = max(max(b1, b2), b3);
int cost1 = a1 - c * (T - b1);
int cost2 = a2 - c * (T - b2);
int cost3 = a3 - c * (T - b3);
接下来判断三个花费中的最小值,并输出对应车次编号和该花费即可。
相关推荐
评论
共 1 条评论,欢迎与作者交流。
正在加载评论...