1 条题解
-
0
自动搬运
来自洛谷,原作者为

未来姚班zyl
欢迎加入粉丝团!https://www.luogu.com.cn/team/72518|AFO搬运于
2025-08-24 21:14:45,当前版本为作者最后更新于2023-04-21 17:17:12,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
Source & Knowledge
年 月语言月赛,由洛谷网校入门计划/基础计划提供。
题目大意
这是题目内容
就是已知两个队伍的通过题目数与罚时,要按照通过题目数优先,通过题目数相同时,罚时短者胜的原则对他们排名,输出靠前的队伍。
题目分析
本题考查分支结构。
就着这道题来讲一讲做一道题的过程。
第一步,阅读题目内容,了解大意。
第二步,确定需要定义的变量及其类型。在本题中,需要定义的变量有四个,分别是 、、、。它们都是正整数,且范围很小,所以定义它们的类型为 。
第三步,按照大意,认真思考,得出解决方案,并写程序实现。
以这题为例,可以直接按照题意,用判断语句,如果 ,则第一队排名靠前,否则,如果 ,则第二队排名靠前,否则,通过题目量一定相同,如果 ,则第一队排名靠前,否则,第二队排名靠前。(因为题目保证了没有排名相同的情况)核心代码如下:
if(a1>a2) cout <<"\"\\n\"";//要按题目提示的格式输出,因为""和\单独使用时是特殊字符 else if(a1<a2) cout <<"\"\\t\""; else if(p1<p2) cout <<"\"\\n\""; else cout <<"\"\\t\"";这样写比较繁琐,因为写了四个判断语句,想一想能不能简化?
在本题中,排名靠前的,要么是第一队,要么是第二队。那么,我们可以先判断第一队是否靠前,如果靠前,则直接输出,否则,一定是第二队靠前。第一队获胜有两种情况:通过题目数更多或者通过题目数相同且罚时更少。
这样只用一条判断语句(和一句 )就能解决问题了。注意,在符号运算优先级不确定时,一定要加括号。
核心代码如下:
if(a1 > a2 || (a1 == a2 && p1 < p2)) cout <<"\"\\n\""; else cout <<"\"\\t\""; }视频讲解
- 1
信息
- ID
- 8598
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 1
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者