Problem A: 扑克牌游戏
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:17
Solved:5
Description
聪聪和明明两位小朋友正在玩一个扑克牌游戏。 每一副扑克牌有黑桃、 红桃、 草花、 方块四种花色,每种花色有 13 张牌, 牌值分别是 Ace、 2、 3、 4、 5、 6、 7、 8、 9、 10、 Jack、Queen、 King,如下图所示:
每一轮出牌,聪聪首先拿出一张牌,然后明明也拿出一张牌,当明明拿出的牌与聪聪拿出的牌花色相同且牌值比聪聪的大时, 明明才能获得本轮出牌的胜利,否则聪聪胜利。这里我们假定牌值的大小关系为:
2<3<4<5<6<7<8<9<10<Jack<Queen<King<Ace
请编程计算某一轮出牌中,当聪聪拿出一张牌后, 明明有多少种出牌方案可以获得胜利,并输出牌值最小的出牌方案。
【输入数据】
输入文件 card.in:输入从文件中读取,输入共 N+2 行。
第 1 行是表示聪聪的出牌信息,首先是一个代表花色的小写字母,然后是一个代表牌值的整数, 中间用一个空格分隔。
第 2 行一个整数 N(1≤N≤100),表示明明现在手上牌的数量。
接下来 N 行,每行表示明明手中一张牌的信息,首先是一个代表花色的小写字母,然后是一个代表牌值的整数, 中间用一个空格分隔。 注意,他们玩的游戏有多副牌,所以有些牌可能重复。
说明:表示花色的小写字母为“s”、“h”、“c”、“d”,分别表示黑桃、红桃、草花、方块。表示牌值的整数为 1 到 13,其中 1 表示 Ace, 11 表示 Jack, 12 表示 Queen, 13 表示King。
【输出数据】
输出文件 card.out:结果输出到文件中, 输出共 2 行。
第 1 行输出明明要想获得胜利有多少种出牌方案。 花色和牌值都相同的出牌方案算作一种。 如果明明没有可以获胜的出牌方案,则输出“0”,此时第 2 行不需要输出。
第 2 行输出明明要想获得胜利可以出的牌中牌值最小的那张牌的信息,包括牌的花色和牌值,中间用一个空格分隔。 花色用小写字母“s”、“h”、“c”、“d” 分别表示黑桃、红桃、草花、方块,牌值用 Ace、 2、 3、 4、 5、 6、 7、 8、 9、 10、 Jack、 Queen、 King 分别表示1到 13。
【输入输出样例 1】
Sample Input Copy
Sample Output Copy