3854推理游戏

3854   推理游戏

题目描述

让李旭琳大跌眼镜的是,小墨老师对学习魔法知识并不是很上心,他天天沉迷于各种游戏之中,例如,他现在又和同学们玩起了Black Vienna游戏,该游戏的规则是这样的:有18张牌,分别标着A~R,游戏有三个人。游戏开始的时候每个人拿5张牌,剩下三张牌隐藏起来,大家都只能看见自己手中的牌。之后,从第一个人到第三个人轮流拿一张“审问牌”去问另外的一个人,“审问牌”上有三个字母,那个人必须诚实地回答自己手中有多少“审问牌”中的字母。哪个人能够最先推断出隐藏起来的牌是什么,那个人就取得胜利。现在你的任务是,给出三个人手上的牌和询问情况,你需要计算出最早在哪一次询问之后,有人能够推断出隐藏的牌。 
例如三个玩家的初始状态为:
玩家1: DGJLP; 玩家2: EFOQR; 玩家3: ACHMN; 隐藏牌: BIK
第1回合:玩家1审问玩家2有无BJK; 回答为0
第2回合:玩家2审问玩家3有无ABK; 回答为1
第3回合:玩家3审问玩家2有无 DEF;回答为2
第4回合:玩家 1审问玩家2有无 EIL; 回答为1
第5回合:玩家2审问玩家3有无 FIP; 回答为0
第6回合:玩家3审问玩家1有无GMO; 回答为1
第7回合:玩家 1审问玩家2有无OQR;回答为 3
第8回合:玩家 2 审问玩家3有无ADQ; 回答为1
第9回合:玩家 3审问玩家1有无EGJ;回答为2
事实上,玩家1能在第8回合判断出隐藏牌是BIK。

输入格式:

输入最多有12组测试数据,所有测试数据结束以0表示。每组测试数据第一行为一整数t,表示审问次数。且2 ≤ t ≤ 15。
下一行包含四个以空格分隔的字符串,表示三个玩家的牌和隐藏牌。
接下来的t行数据为每回合的数据,即审问者和被审问者,审问字母的字符串及被审问者提供的答案。
所有的字符串为从A到R的唯一字母,按严格递增的顺序排列。同样的查询字符串可能出现在多个回合的游戏。

输出格式:

输出最早第几回合,即有玩家判断出隐藏牌。若无玩家能判断出,则输出字符串“?”。
输入样例 复制
9
DGJLP EFOQR ACHMN BIK
2 BJK 0
3 ABK 1
2 DEF 2
2 EIL 1
3 FIP 0
1 GMO 1
2 OQR 3
3 ADQ 1
1 EGJ 2
3
ABCDE FGHIJ KLMNO PQR
3 BKQ 1
1 ADE 3
2 CHJ 2
0
输出样例 复制
8
?

说明

4
11
通过提交
时空限制1000ms/128mb
题目来源
评测方式在线评测
题目类型枚举
难        度