Responsive image

问题 D: 斗地主

问题 D: 斗地主

时间限制: 1 Sec  内存限制: 128 MB
提交: 2  解决: 1
[提交][状态][讨论版][命题人:]

题目描述

相信大家都玩过斗地主,扑克总共有54张,三个人一起玩,两个农民,一个地主。牌的大小规则是:Y(大王)>X(小王)>2>A(1)>K(13)>Q(12)>J(11)>T(10)>9>8>7>6>5>4>3。其出牌的规则有下面几种。

1.单牌:出一张牌。Y(大王)>X(小王)>2>A(1)>K(13)>……>3

2.对牌:二张一样的牌。22>AA>KK>QQ>……>33

3.三重奏:三张一样的牌。222>AAA>KKK>…….>333

4.三带一:三张一样的牌带一张。带的这一张牌必须和其余三张不同,大小只考虑前面的牌,不考虑带的牌。

5.三带二:三张一样的牌带二张。两张可以相同也可以不同,带的两张牌与其余三张不同,大小只考虑前面的牌,不考虑带的牌。

6.四带二:四张一样的牌带再带两张牌。带的两张牌可以是相同的,也可以是不同的。例如:

4444 + 33 或  4444 + 23 都是可以的。

7.王炸:XY(大王和小王的组合)。大王和小王不能看成一对,只能看作王炸牌,而不属于第二种类型的对牌。王炸组合是无敌的。

8.炸弹牌:四张相同的牌一起出,是炸弹牌,但是不能带其他牌。王炸>2222>AAAA>KKKK>……>3333。

为了简便问题,规定只有上面八中出牌方案,至于日常打牌中的顺子,飞机等规则我们一概不考虑。现在给两个选手A,B,每个人手中有一组牌(最多不超过)十七张。A先出,只考虑一个回合的对决,问选手A是否能在当前对决中胜利。若可以输出Yes,否则输出No,所谓赢指A出牌后B打不住,或A出牌后手中牌数为零。

输入描述

第一行一个整数T,接下来T组数据,两行字符串,分别代表A手中的牌和B手中的牌。

输出描述

一轮对决如果A能赢,输出Yes,否则输出No。

样例输入

4 
33A 
2 
33A 
22 
33 
22 
5559T 
9993

样例输出

Yes
No 
Yes 
Yes

[提交][状态]
ACM算法攻关部