华为OD机试——比赛的冠亚季军(C++、Java、Python、JavaScript 深度解析)
题目背景
在体育赛事中,通过比赛来决出最终的冠亚季军是常见的流程。比赛往往是淘汰制的形式,通过若干轮的相邻运动员对决,最后确定比赛的前三名。这道题目要求我们从一组运动员的实力值出发,模拟比赛过程,最终决出冠军、亚军和季军。实力值大的运动员获胜,如果实力值相等,编号小的运动员获胜。比赛需要根据实力进行多轮对战,直到决出最后的冠亚季军。
题目描述
给定 N
名运动员的实力值,他们的编号为 0
到 N-1
。运动员两两比赛,每轮中实力值较大的获胜者晋级到下一轮。如果实力值相等,则编号较小的获胜者晋级。当运动员数量为奇数时,最后一名运动员自动晋级到下一轮。
比赛需要决出冠亚季军,比赛的流程是两两对决,直到只剩下两名运动员决出冠军和亚军,其他选手再决出季军。
输入描述
- 输入一行包含
N
个整数,代表N
名运动员的实力值(0 <= 实力值 <&#