猜牌问题

三个人:S先生、P先生、Q先生。

抽屉里有16张扑克牌:

红桃A、Q、4

黑桃J、8、4、2、7、3

草花K、Q、5、4、6

方块A、5。

教授从这16张牌中挑出一张牌来。

把点数告诉P先生。

把花色告诉Q先生。

这时,约翰教授问P先生和Q先生:

你们能从已知的点数或花色中推知这张牌是什么牌吗?

于是,S先生听到如下的对话:

P先生:我不知道这张牌。
Q先生:我知道你不知道这张牌。
P先生:现在我知道这张牌了。 
Q先生:我也知道了。

听罢以上的对话,S先生想了一想之后,就正确地推出这张牌是什么牌。 


这个问题蛋疼的是第二句话。先从头说起。

P知道点数后,还是不知道这张牌是什么。显然,这张牌出现了不止一次。

比如,P知道点数是2,那就一定是黑桃2。因为没有别的2了。

所以剩下的点数只有:A Q 4 5。

蛋疼的地方来了,Q说:我知道你不知道这张牌。

我开始一直想不明白,P拿着点数,说自己不知道之后,Q当然也能像我一样,知道P是不知道的。那他说这句话有什么用?

看了网上的人解释之后,我才知道,应该这么思考Q:

我知道了花色。如果花色是红桃,那么红桃里的A 4 Q,都出现了不只一次,你是肯定猜不到的。如果花色是方块,那么方块里的A 5也都出现了不只一次。如果花色的黑桃,那就蛋疼了,黑桃里的2 3 7 8 J只出现了一次。万一你这个P拿到了黑桃的牌,我就没办法保证,你不知道这张牌是什么。草花也是这样,草花6 K只出现了一次。万一你这个P拿到了草花的牌,我也不能保证,你不知道这张牌是什么。

关键就在这里,如果牌是红桃、方块,我可以保证你知道点数也没用。如果牌是黑桃、草花,我就没办法保证你知道点数也没用了。这就是Q说的“我知道你不知道这张牌”的真正内涵。

然后就比较简单了。

P说,我他妈的知道了。于是他拿着手上的点数,在桌子上剩下的牌里找。如果他拿的是A,显然是不知道的。所以,他拿的就是4 5 Q中的一个。

Q说,我他妈也知道了。于是,他拿着手上的花色,在桌上找,能找到就说明只能是方块5.

最后就是方块5.

最后说一句,PQS加教授,你们装逼遭雷劈。

莫问前程
原文地址:https://www.cnblogs.com/dolphin007/p/4409416.html