1472 院赛排名

Time Limit : 2000/1000 MS(Java/Others) | Memory Limit : 65534/32767 KB(Java/Others)

Submits : 34 | Solved : 5

Description

2013宁波大学信息学院程序设计竞赛正在火热进行中[地球人都知道],让大家激动不已的Ranklist是怎么生成的呢?

我们采用的高端大气上档次的国际通用管理,规则如下:

1.系统会为每一支参赛队伍记录通过题数解题用时,比赛开始时,这两个值都是0。

2.每一次提交,该提交的提交时间是当前系统时间和比赛开始时间之差,精确到分钟。

3.判题结果有以下几种:

Accepted、Wrong Answer、Compile Error、Time Limit Exceed、Presentation Error、Memory Limit Exceed、Runtime Error。

其中只有Accepted表示顺利解出题目。

一个队伍第一次得到Accepted时,系统会记录该提交队伍的通过题数加一,解题用时加上该提交的提交时间

同时如果该题在该Accepted的提交之前还有其他非Accepted结果的提交,要计算罚时,每一次罚时20分钟,加到队伍的解题用时上。

4.队伍的排名计算方式是:

(1)通过题数多的排前面,排名从1开始计算;

(2)通过题数一样的,解题用时少的排在前面;

(3)通过题数解题用时都一样的排名相同;

(4)如果两个或多个队伍排名一样,这些队伍要占用一个名次。就是说有两个第一名的话,下一个是第三名,而不是第二名。

是不是很简单呢?试试就知道了。


Input

多组测试,组数T满足,0 < T <= 10。

每组首先是一个数N,表示我们有N(N < = 1000)个提交记录。

接下来N行,每行一个提交记录,提交记录按提交时间从小到大给出。

一个提交记录的格式如下:

team_name problem_id judge_status time_h:time_m

team_name是队伍名称,是长度不大于10的字符串,由小写字母和数字组成。总的队伍数不大于100,至少为1。

problem_id是题目编号,整数值,1000 <= problem_id <= 1015。

judge_status是前面提到的几种判题结果中的一种,包含的地方只有一个空格。

time_h和time_m是提交时间的小时部分和分钟部分,大小在合理的范围内。


Output

每组测试,输出最终的院赛排名。
如样例所示,
每行输出一个队伍的信息,格式为:
#排名 队伍名 通过题数 解题用时
数据之间只有一个空格。
解题用时为0时输出“-”(不含引号);其他按“小时:分钟”的格式(不含引号),其中分钟两位输出
队伍按排名顺序从小到大输出,排名相同的队伍名字典序小的在前面。

Sample Input

1
5
team1 1001	Wrong Answer	4:12
team1 1001	Accepted	4:32
team2 1002	Accepted	4:33
team3 1003	Wrong Answer	4:34
team3 1003	Wrong Answer	4:35

Sample Output

#1 team2 1 4:33
#2 team1 1 4:52
#3 team3 0 -

HINT

输入数据,不同数据之间的空格数大于等于一。

题目描述和我们正在进行的比赛可能略有不一样哦,你发现了吗?


Source

NBU OJ

[ Top ] | [ Submit ]