龙空技术网

逻辑语言推理:猜扑克牌,你知道的同时我也知道了

阿东推理小课堂 940

前言:

现时小伙伴们对“c语言逻辑推理”大致比较重视,我们都想要分析一些“c语言逻辑推理”的相关内容。那么小编也在网上搜集了一些关于“c语言逻辑推理””的相关内容,希望大家能喜欢,看官们快快来学习一下吧!

大家都知道有16张扑克牌,分别是:红桃A、4、Q;黑桃2、3、4、7、8、J;草花4、5、6、Q、K;方块A、5。

老师从这16张牌中随机选出一张,把这张牌的点数告诉了甲,把这张牌的花色告诉了乙。

然后老师让甲乙推知这张牌的是什么!于是听到如下对话。

甲:我不知道这张牌

乙:我知道你不知道这张牌

甲:现在我知道这张牌了

乙:我也知道了

听完以上对话,请推理这张牌是什么?

通过题目可以知道甲掌握这张牌的点数,乙掌握这张牌的花色。我们先观察这16张牌的特点,然后用表格的方法列举出来。

一、先分析甲所说的内容“甲:我不知道这张牌”

我们知道甲掌握这张牌的点数,所以甲通过点数是没办法判断出这张牌的花色的!

通过表格可以发现其中2、3、6、7、8、J、K的点数所对应的花色是唯一的(2只对应黑桃,3也只对应草花…)

也就是说甲如果拿到这几个点数,必定能猜出这个点数所对应的花色。

但是甲却说“自己不知道这张牌”,那说明甲所知道的点数必定不是这些。

将这些点数排除掉,这张牌的点数只能是:A、4、5、Q(这几个点数所对应的花色至少有两种)

二、接着分析乙所说的内容“乙:我知道你不知道这张牌”

为什么乙如此自信的认为甲猜不出来这张牌的花色?

那是因为乙听到甲所说的“我不知道这张牌”,分析出甲必定没拿到2、3、6、7、8、J、K这几个点数(乙所分析和上述一样)。

由于乙只掌握花色,乙能通过花色就能分析出甲拿不到这几个点数。

那说明这张牌的花色不会对应这几个点数。

我们注意观察这张表,会发现这几个点数所对应的花色只能是黑桃和草花。

既然这张牌不是这几个点数,那么必定也不对应这两个花色。

那我们就可以把黑桃、草花这两个花色排除掉了!

慢慢的范围就缩小到红桃A、4、Q;方块A、5;这五张牌了……

三、然后甲所说的第二句内容“甲:现在我知道这张牌了”

通过前两句的对话甲就猜出这张牌了,那说明乙所说的“我知道你不知道这张牌”,给了甲强有力的推理参考。

而且这五张牌当中除了点数A所对应的花色是红桃、方块之外,其余所对应的花色是唯一的。

那说明甲所掌握的点数肯定不是A,要不然他没办法猜出花色,排除A甲才顺利猜出这张牌的花色。

同时我们也可以得出这张牌为红桃4、方块5、红桃Q这三张了……

四、最后分析乙所说的第二句内容:“我也知道了”

乙通过甲的第二句推理出这张牌的点数为4、5、Q(乙所分析同上述一样)

我们知道乙掌握这张牌的花色,我们可以发现红桃对应两张牌4、Q,方块对应一张牌5。

乙能通过花色推理出点数,那说明这张牌的点数只能是5,如果是红桃的话所对应两个点数,二选一是没办法确定的。

这样的话我们可以得出这张牌就是:方块5

#逻辑推理##语言推理##智力题##扑克牌游戏#

标签: #c语言逻辑推理