21829_火拼双扣

2022-5-16 18:20| 发布者: Hocassian| 查看: 22| 评论: 0|原作者: 肇庆学院ACM合集

摘要:
C:\Users\Administrator\Downloads\2019-10-12-10-14-4-89505883202100-Problem List-采集的数据-后羿采集器.html

Pro.ID

21829

Title

火拼双扣

Title链接

http://10.20.2.8/oj/exercise/problem?problem_id=21829

AC

0

Submit

0

Ratio

-

时间&空间限制

  • Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 32768/32768 K (Java/Others)
  • 描述

    小明是一个不求上进的孩子,非常喜欢玩QQ游戏的双扣,但是小明的老婆却喜欢玩火拼双扣,没办法,谁让小明家是老婆最大呢,小明只能每天陪着老婆玩火拼双扣了。

    在这里呢,小明还是先唠叨下火拼双扣的规则,以统一一下游戏规则,也避免了有些要求上进的同学没玩过不知道游戏规则。

    由于题目的需求,规则我们只讲合法牌型和出牌大小。

    1.  牌型

    单张:任意一张单牌。

    顺子:任意五张或者五张以上点数相连的牌, 2 和小王不能出现在顺子中。

    对子:任意两张点数相同的牌。

    连对:三对或三对以上点数相连的牌,如: 556677 。 2 和小王不能出现在连对中。

    三张:任意三张点数相同的牌。

    连三张:三个或三个以上点数相连的三张牌,如: 5556 66777 。 2 和小王不能出现在连对中。

    炸弹:四张或四张以上点数相同的牌,如: 6666 6 。

    三王炸弹:任意三个王的牌型。

    天王炸弹:四张王牌。

    X 相炸弹: X 张同样的牌组成的炸弹( 4 ≤ X ≤ 8 )。如: 777777 ( 6 相炸弹)。

    X 相 Y 连环 炸弹: Y 组点数相连( 3 ≤ Y ≤ 6 )且牌数同为 X 的炸弹。如 777778888 8999 99 ( 5 相 3 连环 炸弹) 2 和小王不能出现在此牌型中。

    大王的特殊作用

    大王(包括两个大王)和别的牌型一起出的时候,可以做任意一张满足牌型需要的万能牌。如果大 王可 以替代的牌存在一种以上的选择的时候,则选择大的牌型为优先。

    例如:

    7777 +大王= 77777

    45678 +大王= 456789 (注意不是 3456 78 )

    77899 +大王= 778899

    77 + 8 + 9 +大王+大王= 778899

    2 . 牌型的比较

    特殊的牌型或者特殊牌型的组合,都对应相应的星级。手中有几星级的牌,关系到游戏中的翻倍分数、贡献分数;同时星级也是特殊牌型大小比较的标准。

    星级的分类和定义:

    特殊牌型:

    三王炸弹: 6 星级。

    天王炸弹: 7 星级。

    根据单个炸弹牌型分:

    X 相炸弹:等同于 X 星级。如: 6666 66 为 6 相炸弹等同于 6 星级。

    根据 X 相 Y 连环 炸弹牌型分:星级= X+Y

    具体对应星级如下:

    4 相 3 连环 炸弹: 7 星。

    4 相 4 连环 炸弹: 8 星。

    4 相 5 连环 炸弹: 9 星。

    4 相 6 连环 炸弹: 10 星。

    5 相 3 连环 炸弹: 8 星。

    5 相 4 连环 炸弹: 9 星。

    5 相 5 连环 炸弹: 10 星。

    6 相 3 连环 炸弹: 9 星。

    6 相 4 连环 炸弹: 10 星。

    7 相 3 连环 炸弹: 10 星。

    8 相 3 连环 炸弹: 11 星。

    点数的大小:

    从大至小以次为:F(大王)、f(小王)、 2 、 A 、 K 、 Q 、 J 、 T(10) 、 9 、 8 、 7 、 6 、 5 、 4 、 3

    炸弹:

    炸弹大于任何其他非炸弹的牌型。

    同为炸弹的牌型,先按照星级比较大小;如果星级相同,则按照牌的数量比较大小,数量越少的越大;如过数量相同,则按照牌型中最大牌的点数比较大小。

    特殊:天王炸弹是 7 星牌里面最大的牌型,三王炸弹是 6 星牌里面最小的牌型。

    由于小明打牌很差劲,所以他每次都是点提示出牌,而且小明是不会用连环炸弹的,因为他觉得这样太浪费,现在就要你来完成简单的提示功能,我们的提示功能简单到只要你输出有没有可能出牌,如果有可能出牌,输出"yes",否则输出"no"。

    输入

    有多组case,数据的第一行输入一个正整数n ( 2 < n < 100 )表示case数,下面每个case两行,第一行代表对手出的牌(牌数不超过8张),第二行代表小明手上的牌,两行都是有字母"F(大王)、f(小王)、 2 、 A 、 K 、 Q 、 J 、 T(10) 、 9 、 8 、 7 、 6 、 5 、 4 、 3"组成,保证不出现别的字母,而且保证对手出的牌是合法的牌型,并且符合所有的牌是从两幅标准的扑克中抽取。

    输出

    Description

    小明是一个不求上进的孩子,非常喜欢玩QQ游戏的双扣,但是小明的老婆却喜欢玩火拼双扣,没办法,谁让小明家是老婆最大呢,小明只能每天陪着老婆玩火拼双扣了。

    在这里呢,小明还是先唠叨下火拼双扣的规则,以统一一下游戏规则,也避免了有些要求上进的同学没玩过不知道游戏规则。

    由于题目的需求,规则我们只讲合法牌型和出牌大小。

    1.  牌型

    单张:任意一张单牌。

    顺子:任意五张或者五张以上点数相连的牌, 2 和小王不能出现在顺子中。

    对子:任意两张点数相同的牌。

    连对:三对或三对以上点数相连的牌,如: 556677 。 2 和小王不能出现在连对中。

    三张:任意三张点数相同的牌。

    连三张:三个或三个以上点数相连的三张牌,如: 5556 66777 。 2 和小王不能出现在连对中。

    炸弹:四张或四张以上点数相同的牌,如: 6666 6 。

    三王炸弹:任意三个王的牌型。

    天王炸弹:四张王牌。

    X 相炸弹: X 张同样的牌组成的炸弹( 4 ≤ X ≤ 8 )。如: 777777 ( 6 相炸弹)。

    X 相 Y 连环 炸弹: Y 组点数相连( 3 ≤ Y ≤ 6 )且牌数同为 X 的炸弹。如 777778888 8999 99 ( 5 相 3 连环 炸弹) 2 和小王不能出现在此牌型中。

    大王的特殊作用

    大王(包括两个大王)和别的牌型一起出的时候,可以做任意一张满足牌型需要的万能牌。如果大 王可 以替代的牌存在一种以上的选择的时候,则选择大的牌型为优先。

    例如:

    7777 +大王= 77777

    45678 +大王= 456789 (注意不是 3456 78 )

    77899 +大王= 778899

    77 + 8 + 9 +大王+大王= 778899

    2 . 牌型的比较

    特殊的牌型或者特殊牌型的组合,都对应相应的星级。手中有几星级的牌,关系到游戏中的翻倍分数、贡献分数;同时星级也是特殊牌型大小比较的标准。

    星级的分类和定义:

    特殊牌型:

    三王炸弹: 6 星级。

    天王炸弹: 7 星级。

    根据单个炸弹牌型分:

    X 相炸弹:等同于 X 星级。如: 6666 66 为 6 相炸弹等同于 6 星级。

    根据 X 相 Y 连环 炸弹牌型分:星级= X+Y

    具体对应星级如下:

    4 相 3 连环 炸弹: 7 星。

    4 相 4 连环 炸弹: 8 星。

    4 相 5 连环 炸弹: 9 星。

    4 相 6 连环 炸弹: 10 星。

    5 相 3 连环 炸弹: 8 星。

    5 相 4 连环 炸弹: 9 星。

    5 相 5 连环 炸弹: 10 星。

    6 相 3 连环 炸弹: 9 星。

    6 相 4 连环 炸弹: 10 星。

    7 相 3 连环 炸弹: 10 星。

    8 相 3 连环 炸弹: 11 星。

    点数的大小:

    从大至小以次为:F(大王)、f(小王)、 2 、 A 、 K 、 Q 、 J 、 T(10) 、 9 、 8 、 7 、 6 、 5 、 4 、 3

    炸弹:

    炸弹大于任何其他非炸弹的牌型。

    同为炸弹的牌型,先按照星级比较大小;如果星级相同,则按照牌的数量比较大小,数量越少的越大;如过数量相同,则按照牌型中最大牌的点数比较大小。

    特殊:天王炸弹是 7 星牌里面最大的牌型,三王炸弹是 6 星牌里面最小的牌型。

    由于小明打牌很差劲,所以他每次都是点提示出牌,而且小明是不会用连环炸弹的,因为他觉得这样太浪费,现在就要你来完成简单的提示功能,我们的提示功能简单到只要你输出有没有可能出牌,如果有可能出牌,输出"yes",否则输出"no"。

    Input

    有多组case,数据的第一行输入一个正整数n ( 2 < n < 100 )表示case数,下面每个case两行,第一行代表对手出的牌(牌数不超过8张),第二行代表小明手上的牌,两行都是有字母"F(大王)、f(小王)、 2 、 A 、 K 、 Q 、 J 、 T(10) 、 9 、 8 、 7 、 6 、 5 、 4 、 3"组成,保证不出现别的字母,而且保证对手出的牌是合法的牌型,并且符合所有的牌是从两幅标准的扑克中抽取。

    Output

    每个case输出一行,如果小明能压到对方,输出"yes",否则输出"no"。

    Sample Input

    2
    34567
    456789
    333
    4444

    Sample Output

    yes
    yes

    Source

    样例输入

    2
    34567
    456789
    333
    4444

    样例输出

    yes
    yes

    作者


    路过

    雷人

    握手

    鲜花

    鸡蛋

    最新评论

    返回顶部