#60677. 蒜头君的牌局

蒜头君的牌局

暂无测试数据。

“现在,各位观众,全体起立!”

“给阿姨倒一杯卡布奇诺,开始你的炸弹秀。”

“$17$ 张牌,你能秒我?你今天要是能 $17$ 张牌把我秒了,我当场就把这个电脑屏幕吃掉!”

慈善家陆奔伟的名言不绝于耳,蒜头君今天也来做慈善。

扑克牌用一对数据 $(a,b)$ 表示,其中 $a$ 表示花色,扑克牌有四种花色,分别为红桃、黑桃、方块、梅花,分别用四种字符串表示,如表格所示:

花色 字符串
红桃 rt
黑桃 bt
方块 fk
梅花 mh

$b$ 表示数值,从小到大分别为 $3,4,5,6,7,8,9,10,J,Q,K,A,2$,每种牌在一副牌中最多只有四张。(不包含大小王)

不同的牌组合在一起会形成不同的牌型:

  • 1:四张牌数值相同,则可以形成炸弹。(不论花色)
  • 2:存在数值连续的两个数值,且都有三张或三张以上的数值相同的牌,此为飞机主体(比如 $333,444$,但是 $2$ 不参与,例如 $AAA,222$不行。);若牌中存在除了前面 $6$ 张牌,还存在两种数值相同(不需要连续)且各自的数量均大于等于 $2$ 的牌,则形成飞机带两对,例如 $333,444,55,66$;如果牌中不存在除了最开始的 $6$ 张牌之外的两种数值相同且各自数量大于 $2$ 的牌,且牌总量大于 $8$ 张,则形成飞机带翅膀,例如 $333,444,5,6$。(不论花色)
  • 3:三张牌数值相同;若牌中存在,除了这三张牌之外,数值相同的且数量大于等于 $2$ 的牌,则形成三带二;如果牌中不存在一对相同的数值,且共有大于等于 $4$ 张的牌,则形成三带一。(不论花色)
  • 4:若存在三种或三种以上数值连续且数量都大于等于 $2$ 的数值相同的牌时,则形成连对。(不论花色,但是 $2$ 不参与连对的形成,例如 $KKAA22$ 不为连对,但是 $JJKKQQ$ 为连对。)
  • 5:若存在数值连续,数量大于等于 $5$ 的牌,且花色相同,则形成同花顺,但是 $2$ 不参与同花顺的形成,例如 $rtJ,rtQ,rtK,rtA,rt2$ 不为同花顺,但是 $rt10,rtJ,rtQ,rtK,rtA$ 为同花顺。
  • 6:若存在数值连续,且数量大于等于 $5$ 的牌,不论花色,则形成顺子。但是 $2$ 不参与顺子的形成,如同花顺例。(不论花色)

再次提醒:$2$ 不参与飞机主体、连对、同花顺、顺子。

可是蒜头君从来都不会打扑克,现在蒜头君有十张牌,你可以帮他分析一下他的牌型是什么吗?

如果牌中存在炸弹,则输出 Boom!。(存在炸弹则必存在三带一或三带二,或者存在飞机,此时只需要输出炸弹。)

如果牌中存在飞机带两对,则输出 Plant2!,如果牌中存在存在飞机翅膀,则输出 Plant1!。 如果牌中存在飞机带两对,此时一定有飞机带翅膀,此时只需要输出飞机带两对。(存在飞机则可能出现连对,此时只需要输出飞机。)

如果牌中存在三带二,则输出 tkt!;如果牌中存在三带一,则输出 tko!

如果牌中存在连对,则输出 CPair!

如果牌中存在同花顺,则输出 straight!。(存在同花顺则必然存在顺子,此时只需要输出同花顺。)

如果牌中存在顺子,则输出 Flush!

如果牌中都不存在这些牌型,则输出 Null!

考虑的优先级如下图所示:

markdown-img-paste-20220725172348481.png

输入格式

输入十个字符串,中间用空格隔开,表示十张扑克牌,每个字符串长度为 $3$ 或 $4$,其中前两个字符表示牌的花色,接下来的字符表示牌的数值。

输出格式

输出一个字符串,表示牌型。

数据规模

输入十个字符串。

数据保证每种数值相同的牌花色皆不同,且最多四张。

rt3 rt4 rt5 rt6 rt7 mhK fkQ bt5 rtA bt2
straight!
rt3 rt4 rt5 rt6 rt7 mh3 fk3 bt3 rtA bt2
Boom!