#P2694. A Simple Poker Game
A Simple Poker Game
描述
一家软件公司希望编写一个程序来玩一个简单的扑克游戏。在这个游戏中,玩家会从一副张不同的扑克牌中随机获得一手张不同的牌。一副张的牌由种花色组成,每种花色有张牌,牌的等级和顺序为:和。四种花色分别是梅花()、红桃()、黑桃()和方块()。
你的任务是编写一个程序,根据以下评分规则计算一手张牌的得分:
-
同花顺:分
五张同一花色的连续牌,例如红桃的。注意,也被视为一个有效的序列。 -
四条:分
四张相同等级的牌加一张“杂牌”,例如。 -
葫芦:分
三张相同等级的牌加两张另一等级的牌,例如。 -
同花:分
五张同一花色的牌,例如红桃的。 -
顺子:分
五张连续的牌,例如。注意,也被视为一个有效的序列。 -
三条:分
三张相同等级的牌加两张不同等级的杂牌,例如。 -
两对:分
两对相同等级的牌加一张杂牌,例如。 -
一对:分
两张相同等级的牌加三张不同等级的杂牌,例如。 -
无任何牌型:分
任何不符合上述规则的牌型,例如混合花色的。
注意,如果一手牌同时满足多个规则,则只应用得分最高的规则。例如,“葫芦”包含“三条”和“一对”,但只计算“葫芦”的得分(即分),其他规则不重复计算。
输入
第一行包含手牌的数量,。接下来依次列出手牌。每手牌来自一副完整的张牌。每手牌在一行中列出张牌,每张牌由两个大写字母表示,第一个字母是花色,第二个字母是等级。两张牌之间用一个空格隔开。每手牌的牌序未经过排序。
输出
对于每手牌,输出其得分,每行一个结果。
输入数据
3
C3 D4 D5 S3 CX
CA C5 D4 D3 S2
HA HJ HX HQ HK
输出数据
50
250
1000
来源
台湾 2004