#ZF1067. 一起来熟悉ACM赛制吧(困难版本)

一起来熟悉ACM赛制吧(困难版本)

Background

Special for beginners, ^_^

Description

CCPC(中国大学生程序设计竞赛)和ICPC(国际大学生程序设计竞赛)被合称为XCPC,它们的奖牌是ACMER竞赛生涯的最终目标。

竞赛进行5个小时,一般有7道或以上试题,由同队的三名选手使用同一台计算机协作完成。 当解决了一道试题之后,将其提交给评委,由评委判断其是否正确。若提交的程序运行不正确,则该程序将被退回给参赛队,参赛队可以进行修改后重复提交该问题。 程序判定结果有如下7种: 1、Accepted——通过!(AC) 2、Wrong Answer——答案错。(WA) 3、Runtime Error——程序运行出错,意外终止等。(RE) 4、Time Limit Exceeded——超时。程序没在规定时间内出答案。(TLE) 5、Presentation Error——格式错。程序没按规定的格式输出答案。(PE) 6、Memory Limit Exceeded——超内存。程序没在规定空间内出答案。(MLE) 7、Compile Error——编译错。程序编译不过。(CE)

经典ACM的排名规则为: AC(通过题目)越多,排名越靠前。 AC相同,总用时越少,排名越靠前。 总用时=所有AC题目的用时累加 每一个题目的用时=比赛开始到提交被通过的时间+罚时 罚时=(通过前)错误代码提交次数*每次罚时(20min) (注意,没有通过的题目是不计算罚时的)

每场赛事的奖牌名额为: 金、银、铜按有效参赛队伍的(10%、20%、30%)此处数量向下取整,且必须至少过了一题才能被算作有效队伍)有效队伍不超过350支,排名在金银牌线内即可获得对应奖牌。(如果铜牌最后一名出现多支队伍同排名,发放的奖牌可能多于210块)

困难版本: 现在请你根据某场比赛的所有提交记录,计算并按照顺序输出该场比赛的金银铜牌队伍有哪些,并且输出某一支特定参赛队伍的排名和奖牌情况。

Format

Input

第一行为一个整数T,代表总共有多少组样例。(1<=T<=10) 每组样例包含1+n+k+1行。 第一行为三个整数n,m和k,代表有n支队伍参加了比赛,m道题目,k次提交记录。(10<=n<=1000,1<=m<=13,1<=k<=3000) 接下来n行,每行为1个长度不超过10的只包含小写英文字母的队伍名字,为这n支队伍的队伍名。(保证没有重复队伍名) 再接下来k行,每行为一次提交记录,格式为”队伍名(name) 提交的题目编号(x) 程序判定结果(return) 提交时距离比赛开始经过多少分钟(y)”。 其中name保证必定为前面n支队伍名的某一个,x保证在1到m之间,简化题意return只有AC(通过)和WA(未通过)两种,y保证在1到300之间。输入数据保证不存在某支队伍某道题在同一分钟同时出现AC和WA的情况,也保证没有重复的提交记录。 (特别注意,如果在某支队伍通过了某道题后,这支队伍对这道题不论再做什么提交,都不会对他们的成绩和用时造成影响) 最后一行为n支队伍中某一支的名字,你需要输出这支队伍的所在排名和获奖情况。

Output

对于每组样例 在一行里先输出gold medal:x1,其中x1为金牌队伍数量。 接下来x1行按照排名先后输出x1支金牌队伍的名字,过题数,以及总用时。 再在一行里输出silver medal:x2,其中x2为银牌队伍数量。 接下来x2行按照排名先后输出x2支银牌队伍的名字,过题数,以及总用时。 再在一行里输出bronze medal:x3,其中x3位铜牌队伍数量。 接下来x3行按照排名先后输出x3支铜牌队伍的名字,过题数,以及总用时。 (同题数且总用时相同的情况下,字典序小的在上,但是排名共用,比如三支队伍并列第4,那么这三支队伍都按照第4名来获奖) 最后两行分别输出那支特定队伍的排名,和所获奖牌。(gold/silver/bronze medal,如果没获得奖牌,则输出”Don't give up!”) 相邻两组输出数据之间不需要换行隔开。

Samples

1
12 13 17
aa
ab
ac
ad
ae
af
ba
bb
bc
bd
be
bf
aa 1 AC 54
ab 1 WA 45
ab 1 AC 34
ac 1 WA 1
ac 1 AC 34
bd 2 AC 33
bd 2 WA 22
bb 3 AC 240
bb 1 AC 4
af 7 WA 129
ae 3 AC 55
af 7 AC 131
bf 5 AC 45
be 4 AC 42
bc 4 AC 42
ba 4 AC 42
ad 3 AC 55
be
gold medal:1
bb 2 244
silver medal:4
ab 1 34
ba 1 42
bc 1 42
be 1 42
bronze medal:2
bf 1 45
bd 1 53
3
silver medal