七对子
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目背景
坎格鲁斯普雷将军
马上要去找袋鼠将军
学dp
,但是学习之前他决定放松一下,于是他找到了sls
,想和他开一把雀魂麻将
。
sls
欣然答应,不过他对坎格鲁斯普雷将军
有个要求,因为sls
最喜欢的役种是七对子
,所以他要求坎格鲁斯普雷将军
只能胡七对子
。
但是坎格鲁斯普雷将军
不喜欢七对子
也不会数自己手里有几个对子,所以他准备来找你帮忙,于是,他把他的手牌以字符串的形式写下来交给了你。
题目描述
本题中每张麻将牌会以长度为 字符串的形式给出,其中第一位是数字,第二位为大写字母。
麻将牌的表示有格式限制:当字母为P
,S
或者M
时,前面的数字属于 到 ,当字母为Z
时,前面的数字属于 到 ,其它的表示均为非法,例如 1S
,7Z
,0P
均为合法的麻将牌,9L
,0Z
则不合法。
麻将牌也有一定的数量限制:特别的,0P
,0S
,0M
各只有一张,5P
,5S
,5M
也各只有三张(可以看成是一张5转化成了0,所以0视为5,能与5组成对子,即0P
是一张特殊的5P
。0M
和0S
同理),对于其它牌,则各有四张。
对子:两张牌面相同的牌为一个对子,特别的,对于七对子
言,只有牌面不同的两种牌都成对子才能算两个对子,也就是说,如果某一张牌有超过 张,也只能算一个对子。
现在给你一副手牌,以长度为28的字符串(即张麻将牌)给出,如果其中有非法的麻将牌(格式非法或者数量超过限制),请输出“Invalid”(不含引号),否则请输出这个手牌中有几个对子。
输入格式
第一行包含一个整数 ,代表 次询问。
接下来 行,每行包含一个长度为 的字符串,保证字符串只含有数字和大写字母且保证会以数字和大写字母交替组成。
输出格式
对于每次询问,如果有非法情况,输出一行为 “Invalid” (不含引号);否则为一个整数,代表有几个对子。
Samples
1
1S2S1S2S1M5P1M0P9S1Z2Z3Z4Z1Z
5
3
1S2S1S2S1M5P1M0P9S1Z2Z3Z4Z8Z
1S2S1S2S1M5P1M0P9S1Z1Z1Z1Z1Z
0P2S1S2S1M5P1M0P9S1Z2Z3Z4Z1Z
Invalid
Invalid
Invalid
1
1S1S2S2S3S3S4S4S0S5S6S6S7S7S
7
1
1M1M2M2M3M3M4M4M0M5M5M5M6M6M
6
样例解释/说明
对于样例1,有1S
,2S
,1M
,1Z
,5P
五个对子,因为0P
和5P
组成了一组对子
对于样例3,显然这是一个漂亮的七对子
对于样例4,虽然能胡牌,但是只有 个对子,并没有役种七对子