#P1016. Predict
Predict
题目描述
随着小猪界象征着最高级别的小猪足球世界杯的开打,很多人都加入了猜球的行列。小香猪由于各种原因以球员的身份参赛,但是她也积极加入猜球行列。小猪足球世界杯是分成好几轮来打的,每一轮有特定场次比赛组成。每一场比赛以后,如果你不仅可以通过猜对这一场比赛的胜负而得分,而且如果猜对了比分,还可以得到额外的分数。每一轮结束以后,获得最高分的人会因此而得到特殊的分数,我们把它叫做一摩尔(等一下如果出现平局一摩尔就会派上用处啦)。如果此时有多人同时获得最高分,那么每人将得到一摩尔。
当小猪足球世界杯比赛结束以后,获得分数最高的将被封为球神的称号。
前些日子这一些事情听起来还很遥远,可是转眼明天将举行最后的决赛。但是博彩公司现在还没有开始算每个人的得分,那么请你赶快写一个程序来计算每个人的得分。
博彩公司会给你所有参加猜球者的姓名,他们对每一场球赛的预测,以及每一场球赛的结果和比分。你需要算出每一个参与者的得分和他的摩尔数,并按他们的得分排序输出。
在这个博彩公司,如果你猜对一场球的胜负平那么将得到 分,如果不仅如此,还猜中了比分,那么你将得到额外的 分。
输入格式
输入文件的第一行是一个正整数 ,表示一下有 组测试数据。对于每一组测试数据的第一行,将有由空格隔开的两个正整数 和 组成, 表示参加猜球的人数, 表示球赛一共进行 轮。接下来包含 行,其中第 行表示第 个参与者的名字,他们的名字由至多 个字符组成。接下来会有 个描述,分别给出每一轮的球赛信息。
对于每一轮,第一行由一个正整数 组成,表示这一轮一共进行了 场比赛。接下来给出每一场比赛的信息。
对于每一场比赛,首先包含这场比赛的比分,接下来有 行,分别表示每一个猜球者对这场比赛比分作出的预测。所有比分都以 X : Y
的形式给出(分号前后以一个空格隔开),这里 和 是非负整数。
输出格式
对于每一组输入数据,第一行输出 Scenario #i:
,其中 表示当前是第 组数据, 从 开始计数。接下来的 行给出所有参与者的分数和摩尔数以及他们的名字,具体输出方式有以下要求:
- 获得分数越多的排名越高;
- 如果分数相同,他们的摩尔数越多排名越高;
- 如果分数相同摩尔数也相同,那么按照输入顺序输出。
- 对于每一行,分数、摩尔数、姓名必须以一个空格隔开。每一组输出数据以一个空行结束。
样例输入
2
2 2
Gerhard Delling
Guenter Netzer
1
4 : 3
0 : 1
1 : 0
2
1 : 0
1 : 0
1 : 0
0 : 0
2 : 1
0 : 0
3 1
Johannes B. Kerner
Urs Meier
Juergen Klopp
1
2 : 1
2 : 1
2 : 1
2 : 1
样例输出
Scenario #1:
7 2 Guenter Netzer
3 0 Gerhard Delling
Scenario #2:
3 1 Johannes B. Kerner
3 1 Urs Meier
3 1 Juergen Klopp