问题2483--斗地主

2483: 斗地主

[命题人 : ]
时间限制 : 1.000 sec  内存限制 : 64 MB

题目描述

火箭:即双王(大王和小王)。炸弹:四张同数值牌。单牌:单个牌。对牌:数值相同的两张牌。三张牌:数值相同的三张牌。三带一:数值相同的三张牌 + 一张单牌或一对牌。例如: 333+6或444+99单顺:五张或更多的连续单牌(如:45678或78910JQK)。不包括2点和双王。双顺:三对或更多的连续对牌(如:334455)。不包括2点和双王。三顺:二个或更多的连续三张牌(如:333444)。不包括2点和双王。飞机带翅膀:三顺+同数量的单牌(或同数量的对牌)。如:444555+79 或333444555+7799JJ四带二:四张牌+两手牌(如:5555+3+8或4444+55+77)。 给定n张牌,判断能不能一次出完。

输入

第一行输入一个整数T(T <= 50),表示有几组数据。每组数据占一行,每一行的第一个数n(0 < n <= 20)表示这组测试数据有n张牌,接下来是n张牌。 (总共有15张不同的牌:A 2 3 4 5 6 7 8 9 10 J Q K J1 J2, J1、J2代表大小王,其它相同的牌最多四张)

输出

对于每组测试数据占一行,格式为:Case #a: Str,a是第几组数据,从1开始。如果能一次出完则Str 为Yes, 否则为No。

样例输入 Copy

5
2 J1 J2
4 A A A 5
5 A A A 5 6
6 A A A A 5 5
5 10 J Q K A

样例输出 Copy

Case #1: Yes
Case #2: Yes
Case #3: No
Case #4: Yes
Case #5: Yes

来源/分类

wy