首页 > 试题广场 >

球赛

[编程题]球赛
  • 热度指数:265 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解

大学生足协决定举办全国性的大学生足球赛,由每个学校派遣一支队伍代表该校参赛。比赛分区分为几个赛区进行,最终的总决赛中,将有不超过n支队伍参加。经过激烈的角逐,有机会参与总决赛的队伍已经决出。

 

协会对比赛的规则进行了调整,以便使得比赛更具有观赏性。

1. 总决赛的参赛队伍为n支,n为偶数;

2. 进入前1/2的队伍才有资格进入淘汰赛;

3. 队伍按积分排名,具体规则为:胜一场积3分;平一场积1分;负一场积0分。队伍首先按积分降序排列,积分相同按净胜球数降序排列,仍然相同的按进球数降序排列。

4. 基于上述规则,尚未出现有排名歧义的情况发生。

 

随着赛程的进行,目前各个队伍对战的结果已经确定了,小B负责确定进入淘汰赛的名单,她向你求助,你能帮她吗?


输入描述:
测试数据有多组,每组测试数据的第一行为一个整数n(1≤n≤50),为参与总决赛的球队数,随后的n行为球队的名字,由不超过30个的大小写拉丁字母构成。随后的n*(n-1)/2行为赛事的开展情况,每行的格式为name1-name2 num1:num2,表示两支队伍的比分情况(1≤num1, num2≤100)。确保不会有两支队伍同名,也不会出现队伍自己通自己比赛的情况,且每场比赛仅出现一次。


输出描述:
对每组测试数据,输出n/2行,为按字母序排列的进入淘汰赛的n/2支队伍的名单,每个名字在单独的行中输出。
示例1

输入

4
A
B
C
D
A-B 1:1
A-C 2:2
A-D 1:0
B-C 1:0
B-D 0:3
C-D 0:3
2
a
A
a-A 2:1

输出

A
D
a
没必要做,浪费时间。案例都是错的,完全不按题目要求出的测试案例。
发表于 2021-12-25 23:09:59 回复(0)
更多回答
本地上是对的;     测试用例也过了,不知道还哪有问题 ?
编辑于 2019-05-24 16:05:29 回复(0)
题目不严谨,如:2:2理解为平两场,各积2分,还是理解为分别胜两场,各积6分;
                             1:2理解为?
发表于 2019-03-26 15:56:57 回复(1)
这题的输入没有交代测试数据的组数,什么时候代表输入结束?
发表于 2019-02-12 15:27:39 回复(0)
这题目怪怪的,我在本地编译器上至少测试示例是对的,可是我的通过率为0。然后各种找问题,经过仔细看他的测试用例发现,测试用例有问题,存在两只队伍同名的情况,如下图横线处所示。还存在n为单数的情况,即红线前面的“1 a 49”,不知道什么鬼,太坑了。

编辑于 2019-01-24 15:28:03 回复(0)
这道题目的输入是不是有点问题?
发表于 2019-01-15 12:29:52 回复(0)