1472 院赛排名
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 : 65534/32767 KB(Java/Others)
提交数 : 337 | 通过数 : 33
题目描述
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)如果两个或多个队伍排名一样,这些队伍要占用一个名次。就是说有两个第一名的话,下一个是第三名,而不是第二名。
是不是很简单呢?试试就知道了。
输入要求
多组测试,组数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是提交时间的小时部分和分钟部分,大小在合理的范围内。
输出要求
每组测试,输出最终的院赛排名。如样例所示,每行输出一个队伍的信息,格式为:#排名 队伍名 通过题数 解题用时数据之间只有一个空格。解题用时为0时输出“-”(不含引号);其他按“小时:分钟”的格式(不含引号),其中分钟两位输出。队伍按排名顺序从小到大输出,排名相同的队伍名字典序小的在前面。
输入样例
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
输出样例
#1 team2 1 4:33 #2 team1 1 4:52 #3 team3 0 -
提示
输入数据,不同数据之间的空格数大于等于一。
题目描述和我们正在进行的比赛可能略有不一样哦,你发现了吗?
来源
NBU OJ