题目描述 一场 ICPC 正式赛共 5 5 小时。
队伍的排名由通过题数与罚时决定。通过题数更多的队伍排名更靠前,若通过题数相同,则罚时更小的队伍排名更靠前。通过题数与罚时均相同的队伍排名相同。本题中可能出现队伍排名相同的情况,此时,认为先出现在提交记录中的队伍排名靠前。
148 88+3×20=148 分钟。
需要注意的是,仅有通过的试题的未通过提交会被计算罚时。例如,某队在 I 题共有 14 14 次未通过的提交,但到比赛结束,该队都没有通过 I 题,则这 14 14 次未通过的提交不会被计算罚时。在某一题通过后,该队对这一题的任何提交(无论是否能够通过)都不会影响本题通过的结果和本题的罚时。
选手在比赛过程中可以随时提交某一道试题的代码,代码将被立即评测并返回结果( Accepted Accepted, Time
Limit
Exceeded Time Limit Exceeded, Memory
Limit
Exceeded Memory Limit Exceeded, Presentation
Error Presentation Error, Wrong
Answer Wrong Answer, Runtime
Error Runtime Error)。其中,评测结果 Accepted Accepted 为通过,其他评测结果均为不通过。
在比赛进行的前四小时( 0 : 00 : 00 ∼ 4 : 00 : 00 0:00:00∼4:00:00),每支队伍的提交均会在排行榜上反映出来。比赛的最后一小时( 4 : 00 : 01 ∼ 5 : 00 : 00 4:00:01∼5:00:00),排行榜将被冻结(封榜),所有的提交在排行榜对应队伍对应试题上均显示为待判题(提交的队伍知道评测结果)。
在比赛结束后,会进行紧张刺激的滚榜环节。滚榜嘉宾将按照封榜时的排行榜,依照从最后一名到第一名,先读出队伍队名,再按照从 A 题依次到最后一题的顺序,公布排行榜上该队“待判题”状态试题最终是否通过。
如果通过,所有队伍的排名将立即重新计算,显然,已经滚榜完成(被滚榜嘉宾念过队名,且所有待判题状态的结果都已经揭晓)的队伍排名不会有影响。若该队伍排名上升,则滚榜嘉宾立即开始下一支队伍的滚榜。因此,一支队伍的队名可能被滚榜嘉宾多次读出。
例如,某队队名为“囤题”,在前四小时没有通过任何一题,封榜时排在最后一名。在封榜后,该队连续通过全部十三道题目。那么滚榜嘉宾有可能读到该队队名七八次。当然,当该队上升到第一名后,其排名不会再发生变化,即使揭晓的判题结果为通过,但其排名没有发生变化,滚榜嘉宾不会再次读出其队名。
现在给出某场 ICPC 完整的提交记录,请你依次输出滚榜嘉宾念出的队名。
一次提交记录都没有的队伍不会在排行榜上出现,也不会在滚榜中被念到队名。
输入格式 输入的第一行为三个整数 ? , ? , ? n,m,K,依次为该场 ICPC 试题数、该场 ICPC 队伍数、该场 ICPC 提交记录数。
接下来 ? K 行,每行为四个空格分隔的字符串,表达一条提交记录。第一个形如 ? : ? ? : ? ? x:yy:zz,代表该记录在比赛开始 ? x 小时 ? ? yy 分钟 ? ? zz 秒时提交。第二个字符串为一个大写英文字母,代表试题的编号( A,B, ⋯ A,B,⋯)。第三个字符串为队名,保证队名不含空格。第四个字符串(可能含有空格,但为仅出现「题目描述」中的六种评测结果)为该评测记录的评测结果,具体字符串的含义见试题描述部分。
输出格式 输出若干行,为该滚榜嘉宾依次读到的队名。
求助这道题思路,看不懂题解(TNT)