HZNUOJ

三国杀

Tags:
Time Limit:  3 s      Memory Limit:   128 MB
Submission:309     AC:68     Score:95.87

Description

2-80X考研自习室曾经有一段时间卷起了三国杀的风潮。不知不觉间形成了两大阵营,一方是以ACM队伍颜值担当曾小浪为首的颜值队,另一方是以资深宅男代表小马哥为首的内涵队。两支队伍水火不容,时常需要借助三国杀的战场决出胜负。为了公平起见,双方阵营派出一部分成员参与三国杀游戏,以最终各个队伍成员的得分及排名作为双方队伍得分的参照标准,队伍整体得分高的获得胜利。


以下补充三国杀背景知识:

三国杀是当下最热门的桌游之一。这是一种结合三国故事情节的卡牌类智力游戏,如果你玩过杀人游戏,那么你一定会对它上瘾。


游戏中一共有六类卡片:身份牌,武将牌,体力牌,基本牌,锦囊牌,装备牌。题目简化游戏规则,单独重视身份玩法。

 

作为有别于其他桌游的最主要特色,就是身份系统。三国杀中共有4种身份:主公、反贼、忠臣、内奸(样例中分别以”ZG”,”FZ”,”ZC”,”NJ”表示身份)。

以下是各个阵营的胜利条件:

1.主公和忠臣方的胜利条件就是剿灭所有反贼和内奸。

2.反贼的胜利条件是杀死主公。

3.内奸则需要先清除其他除主公外的所有人物,最后单挑战胜主公。

如果游戏中任意一方达成胜利条件,游戏则结束。

 

游戏结束的时候开始结算各个玩家的得分,其中玩家总得分=基础分(基础得分)+额外得分(胜利额外加分)。详细得分计算表如下

 

各势力基础得分

基本得分

主公/忠臣获胜

反贼获胜

内奸获胜

主公

4+获胜时存活的忠臣数*2

0

1

忠臣

5+获胜时存活的忠臣数*1

0

0

反贼

0

获胜时存活的反贼数*3

0

内奸

若与主公单挑败北:得分X(X为参与游戏的人数);否则得0分

若存活得1分,否则得0分

4+游戏人数*2

额外加分(只有胜利方可以获得额外加分)

主公/忠臣

每消灭一个反贼或内奸+1

反贼

每消灭一个忠臣或内奸+1

消灭主公+2

 

各个队伍基础得分为队伍成员的得分总和,但是ACM队伍非常赏识高素质人才,以及出于游戏平衡性的考虑,给出部分加分政策:

1.队伍中若含有内奸身份,队伍整体加分且仅加1分,无则不加分。

2.玩家得分排名第一的玩家可以为自己的队伍总分额外赢得3分,第二名为队伍赢得2分,第三名为队伍赢得1分。(若排名时玩家之间分数相同,则编号小的玩家优先)


由于ACM队伍中资历最老的yybird长老正在忙于不可描述的学术性研究,无暇顾及这场队内纷争,于是就把评判队伍胜负的任务交给了你们。

Input

输入数据的第一行是一个正整数T(1<=T<=100)代表接下来有T组测试数据。

每组测试数据第一行包含两个正整数N,M(4<=N<=100,0<=M<N)其中N代表玩家人数,M代表击杀操作。

接下来一行包括N个身份信息s1, s2,..., sn依次代表各个玩家的身份。其中数据保证各个势力全都存在,且主公身份仅有一个。

接下来M行每行包含2个正整数A,B。代表玩家A击杀玩家B,数据保证玩家A与玩家B必然是当前存活的玩家。如果当前行为导致游戏结束。那么后续击杀操作无需处理。

最后两行给出队伍成员信息,第一行第一个数字k1代表颜值队的成员数量,接下来k1个数字代表颜值队成员编号。第二行第一个数字k2代表内涵队的成员数量,接下来k2个数代表内涵队的成员编号。

Output

第一行输出”Game X:”单独作为一行,其中X是测试样例编号,从1开始。

第二行输出每位玩家的最终得分,其中各得分间用空格隔开,行末无多余空格。

第三行输出两个阵营的总得分,中间用空格隔开。

第四行输出胜负信息,颜值队获胜则输出”YZ WIN!”,内涵队获胜则输出”NH WIN!”,持平则输出”TIE!”。

任意两个样例之间请输出一个空行。

Samples

input
3 4 3 ZG ZC NJ FZ 1 3 2 1 0 2 3 0 1 2 1 3 6 1 ZG ZC NJ FZ FZ FZ 3 0 3 0 1 2 3 3 4 5 8 7 ZG ZC ZC NJ NJ FZ FZ FZ 3 1 3 2 3 4 3 5 3 6 3 7 3 0 3 0 1 2 5 3 4 5 6 7
output
Game 1: 5 6 4 0 22 0 YZ WIN! Game 2: 0 0 1 11 9 9 2 35 NH WIN! Game 3: 1 0 0 20 0 0 0 0 4 24 NH WIN!

Hint

1.游戏可能包含多个内奸。

2.玩家得分总和加上玩家为队伍赢得的奖励分才是队伍的最终得分。

3.如样例1中,忠臣击杀反贼,内奸击杀忠臣,剩下主公与内奸单挑,主公击杀内奸获胜。由此算基础分玩家0得分4+0*2+1(额外加分)=5,玩家1得分5+0*1+1(额外加分)=6,玩家2得分4,玩家3得分0。则颜值队基础得分为5+6+4=15,内涵队基础得分为0。排名后玩家1为队伍赢得3分,玩家0为队伍赢得2分,玩家2为队伍赢得1分。又颜值队中包含内奸,总得分加1。颜值队最终得分为15+3+2+1+1=22,内涵队为0。所以颜值队获胜。

Author

YU, Deli

Source

杭州师范大学第十届程序设计竞赛