7.5华为OD机试真题 新系统 - 省超足球比赛获胜队伍计算 (Java/Py/C/C++/Js/Go)

省超足球比赛获胜队伍计算

2026 华为OD机试真题 7月4日华为OD上机新系统考试真题 100 分题型

点击查看华为 OD 机试真题完整目录:2026最新华为OD机试新系统卷 + 双机位C卷 真题题库目录|全覆盖题库 + 逐点算法考点详解

题目描述

江苏省举办省级足球超级联赛,以市为单位参赛。请根据给定的比赛结果,输出获得冠军、亚军、季军的队伍名称。

比赛安排

  1. 参赛的队伍总数为 teamNumteamNum 的取值范围是 3≤teamNum≤15;

  2. 比赛采用单循环赛制:

    • 任意两支参赛队伍之间至少比赛 1 场,若两队队伍之间不存在比赛记录,说明其中有队伍弃赛;
    • 总比赛场次不超过 teamNum×(teamNum−1)/2 场;
  3. 比赛最终各队伍不允许出现积分和净胜球都完全相同的情况。

计分规则

  1. 胜者得 3 分,平局各得 1 分,负者得 0 分;
  2. 每场比赛记录双方的进球数(进球数 ≥0),从而计算净胜球(进球数 - 失球数)。

排名规则

首先按总积分从高到低排序。若积分相同,则按净胜球从高到低排序。

输入描述

第一个参数:为一个整数 teamNum,表示参赛队伍的数量。teamNum 的取值范围是 3≤teamNum≤15,若比赛队伍超过此范围则输入不合法。

第二个参数:为一个二维数组。二维数组的每一行表示一场比赛的结果,格式为: 队伍A名称 队伍A进球数 队伍B进球数 队伍B名称;

输出描述

如果输入合法,则输出一个字符串列表,分别为冠军、亚军、季军的队伍名称;
如果输入不合法,则输出一个空字符串列表。

补充说明

所有不符合题目描述中"比赛安排"、"积分规则"章节约束的输入均视为不合法输入,程序输出按照输入不合法处理。

示例1

输入

3,[["Beijing","2","1","Shanghai"],["Beijing","3","0","Guangzhou"],["Shanghai","1","1","Guangzhou"]]

输出

["Beijing","Shanghai","Guangzhou"]

说明

Beijing:

vs Shanghai: 胜(得 3 分,净胜球 +1)

vs Guangzhou: 胜(得 3 分,净胜球 +3)

总积分:6,总净胜球:4

Shanghai: vs Beijing: 负(得 0 分,净胜球 -1)

vs Guangzhou: 平(得 1 分,净胜球 0)

总积分:1,总净胜球:-1

Guangzhou:

vs Beijing: 负(得 0 分,净胜球 -3)

vs Shanghai: 平(得 1 分,净胜球 0)

总积分:1,总净胜球:-3

所以排名:

  • Beijing (6 分, 净胜球 +4) > Shanghai (1 分, 净胜球 -1) > Guangzhou (1 分, 净胜球 -3)

示例2

输入

3,[["Beijing","1","1","Shanghai"],["Guangzhou","1","1","Beijing"],["Shanghai","
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

算法大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值