比赛场次 223
比赛名称 20110928
比赛状态 已结束比赛成绩
开始时间 2013-11-05 19:00:00
结束时间 2013-11-05 22:00:00
开放分组 全部用户
注释介绍
题目名称 拱猪计分
输入输出 heart.in/out
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
Gravatarzjmfrank2012 AAAAAAAAAA 0.003 s 0.28 MiB 100
Gravatar11111111 AAAAAAAAAA 0.007 s 0.32 MiB 100
GravatarLauncher WAAAAAAAAA 0.004 s 0.31 MiB 90
Gravatardigital-T WAAAAAAAAA 0.007 s 0.32 MiB 90
Gravatar, WAAAAAAAAW 0.002 s 0.17 MiB 80
GravatarAlan WAAAAAAAAW 0.005 s 0.17 MiB 80
Gravatarcstdio WWAAWAWAAW 0.003 s 0.31 MiB 50
Gravatarraywzy WWAAWAWAAW 0.006 s 0.31 MiB 50
GravatarC语言入门 RRRRRRRRRR 0.005 s 0.17 MiB 0

拱猪计分

★☆   输入文件:heart.in   输出文件:heart.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述】
    拱猪是一种很有趣的扑克牌游戏。 即使你不知道它的玩法,你也可以由它的计分方式来了解它的趣味性。 假设在此我们仅考虑四个人的拱猪牌局,本题要求你根据下面的计分规则,在牌局结束时计算四位玩家所得分数。

  1. 我们分别以 S 、 H 、 D 及 C 来代表黑桃,红心,方块及梅花,并以数字 1 至 13 来代表 A 、 2 、 … 、 Q 、 K 等牌点,例如︰ H1 为红心 A , S13 为黑桃 K 。
  2. 牌局结束时,由各玩家持有的有关计分的牌 ( 计分牌 ) 仅有 S12 ( 猪 ) ,所有红心牌, D11 ( 羊 ) 及 C10 ( 加倍 ) 等 16 张牌。其它牌均弃置不计。若未持有这 16 张牌之任一张则以得零分计算。
  3. 若持有 C10 的玩家只有该张牌而没有任何其它牌则得 +50 分,若除了 C10 还有其它计分牌,则将其它计分牌所得分数加倍计算。
  4. 若红心牌不在同一家,则 H1 至 H13 等 13 张牌均以负分计,其数值为 -50 , -2 , -3 , -4 , -5 , -6 , -7 , -8 , -9 , -10 , -20 , -30 , -40 。而且 S12 与 D11 分别以 -100 及 +100 分计算。
  5. 若红心牌 H1 至 H13 均在同一家,有下列情形︰
    • 所有红心牌以 +200 分计算(13张总共+200分)。
    • 若 S12 、 D11 皆在吃下所有红心牌之一家,则此玩家得 +500 分(这15张总共+500分)。
    • 而 C10 还是以前面所述原则计算之。

例一:若各玩家持有计分牌如下: ( 每行代表一玩家所持有之牌 )

S12 H3 H5 H13

D11 H8 H9

C10 H1 H2 H4 H6 H7

H10 H11 H12

则各家之得分依序为: -148 、 +83 、 -138 及 -60 。

例二:若各玩家持有计分牌如下: ( 第四家未持有任何计分牌 )

H1 H2 H3 H4 H5 H6 H7 H8 H9 H10 H11 H12 H13

S12 C10

D11

则各家之得分依序为: +200 、 -200 、 +100 及 0 。

例三:若有一玩家持有所有 16 张计分牌,则得 +1000 分。其余三家均得零分。

【输入格式】
     每个输入文件由多组测试数据构成,每组测试数据有四行,每一行第一个数为该玩家所持有计分牌总数,而后列出其所持有之所有计分牌,牌数与各计分牌均以一个以上的空格分开。相邻两组测试数据之间不会有空白行,读到四家持牌数都为 0 表示文件结束。

【输出格式】
     每一行输出一组测试数据对应的结果,依次输出各家所得分数,共四个整数 ( 含正负号, 0 除外 ) ,相邻两个整数之间以一个空格分开,符号和数字间不可以有空格。每组输出间不需要有空白行。

【输入输出样例】
 
输入:
heart.in
4 S12 H3 H5 H13
3 D11 H8 H9
6 C10 H1 H2 H4 H6 H7
3 H10 H11 H12
13 H1 H2 H3 H4 H5 H6 H7 H8 H9 H10 H11 H12 H13
2 S12 C10
1 D11
0
0
0
0
0
 

输出:
heart.out
-148 +83 -138 -60
+200 -200 +100 0