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 先生:你们能从已知的点数或花色中推知这张牌是什么牌吗?
分析:
红桃A、Q、4 黑桃J、8、4、2、7、3 草花K、Q、5、4、6 方块A、5
P先生:我不知道这张牌。
首先排除黑桃2、7、3、8、J 和 草花K、6
剩下的牌如下排列
红桃A Q 4
黑桃 4
草花 Q 4 5
方块A 5
Q先生:我知道你不知道这张牌。
这里就可以排除 黑桃 和梅花。可能大家有疑问,先分析结果。
P先生:现在我知道这张牌了
OK,根据 点数 和 剩下的 花色,那么只能有唯一的一张了。
P知说知道了,那么Q 分析P 知道的唯一原因,也只能是那张了。
上面有点原因,为什么会排除 黑色和 草花呢?
Q先生:说P 不知道这张牌,拿什么来肯定的呢?花色,因为他只有花色。肯定不是草花。因为 如果是草花,P 拿到了 K或者6,P 肯定就知道了是什么牌,Q既然敢这么说,说明不是草花。(都不说谎)同时P 不知道什么牌,说明他的牌肯定是重复的,为什么不是黑桃呢?如果是黑桃,Q 先生敢也不敢这么说啊,因为黑桃里面J 这些也是独立了。如果P 拿到J 怎么办,既然Q敢说得这么肯定,那么 肯定不是黑桃。
因此只有任何花色 里面的所有点数,都在其他花色中出现重复的,才能确定P 不知道,否则 P 都有可能拿到唯一牌,从而知道花色。从Q 开始分析。
相关推荐
【猜数,猜牌游戏】是一款集合了猜数与猜牌两种经典娱乐元素的游戏,它在编程领域中属于VB(Visual Basic)开发的项目。VB是一种面向对象的编程语言,由微软公司推出,广泛应用于创建Windows应用程序。这款游戏的...
【猜牌游戏】是一款基于安卓平台的趣味游戏,它旨在为玩家提供一个猜测牌面花色和点数的挑战。这款游戏充分利用了安卓系统的特性和功能,以吸引玩家并提升其娱乐体验。通过游戏的设计和实现,我们可以深入学习到以下...
【安卓猜牌游戏源码原创】是一个专门为Android平台设计和开发的猜牌游戏项目,它展示了如何使用Java语言和Android Studio进行游戏应用的构建。在这个游戏中,用户需要根据系统给出的提示来猜测一张牌的花色和数字,...
【安卓猜牌游戏源码】是一款基于Android平台的猜数字小游戏,它展示了如何在Android环境中开发简单的娱乐应用。这个游戏的核心玩法是系统随机生成一个数字,玩家通过猜测来尝试猜出这个数字,通常会有一定的次数限制...
在Android平台上进行应用开发时,猜牌游戏是一个常见的学习项目,它可以帮助开发者熟悉基本的编程概念、用户界面设计以及事件处理。"猜牌游戏源码"通常包含一系列的Java或Kotlin文件,用于实现游戏逻辑,XML文件用于...
【C#网络版猜牌游戏软件】是一款基于C#编程语言开发的在线猜数字游戏,由youthol.org软件学院出品。这个游戏的核心是通过网络连接让玩家之间进行互动猜牌,增强用户之间的娱乐性和竞技性。下面将详细介绍该软件涉及...
VB摸牌游戏-猜牌游戏,本游戏能猜出你摸过的扑克牌,信不信由你!曾经在电视上看过一个大卫表演的魔术,他在屏幕上先摆出四张牌,让你选中一张并用手指在屏幕上指着它,然后又添加5张牌,九张牌分别代表九节车厢,你...
【标题】:“creator实现简单的猜牌游戏” 在编程领域,创建一个简单的猜牌游戏是一种常见的练习,用于提高逻辑思维和编程技巧。这个项目可能由一个名为"creator"的开发者完成,目的是通过游戏来实践和展示基本的...
【Android猜牌游戏源码】是一款基于Android平台的猜数字游戏,它展示了如何在Android环境中开发一款简单的互动娱乐应用。这款游戏的核心玩法是让玩家猜测一个随机生成的数字,通过提示来逐渐接近正确答案,增加了...
【Android 猜牌游戏开发详解】 Android 猜牌游戏是一种常见的移动应用程序,它能够帮助初学者了解Android开发的基本概念和技术。在这个项目中,我们将深入探讨如何利用Android Studio进行游戏设计,涵盖UI布局、...
猜牌游戏,比点大,是一款简单而有趣的编程实践项目,尤其适合初学者用来学习编程逻辑和算法设计。在这个游戏中,玩家与计算机进行一轮一轮的猜牌,目标是猜出手中牌的点数是否比电脑的大。下面我们将深入探讨这个...
【标题】:“Android学习初体验 猜牌游戏” 这篇博客文章主要介绍了一位开发者初次学习Android编程时创建的一个猜牌游戏项目。猜牌游戏是一个经典的编程练习,它可以帮助初学者掌握基本的Android应用开发技能,包括...
Android猜牌游戏,包括了随机洗牌函数,在本例中进度条的应用很重要,设置进度条不可见,如果直接关闭会因为调用了其他线程的View而报错,因此采用了runOnUiThread(progressInvisible);注意 :这里要把i归0,否则...
简单的从语言游戏,会员密码为123,可任意注册,任意登录!
"猜牌克牌小游戏"是一种常见的智力挑战游戏,通常涉及到概率、逻辑推理和心理策略。在这款游戏中,玩家需要通过观察和思考来猜测对手手中或者牌堆中的牌面,以达到战胜对手的目的。下面我们将详细探讨这个主题,涵盖...
在Android平台上,开发一款猜牌游戏涉及到多个技术层面,其中包括用户界面(UI)的设计、触摸事件的处理以及自定义视图的使用等。这个源码项目恰好提供了这些方面的实例,让我们一起深入探讨其中的关键知识点。 ...
标题 "C++编辑15张牌可以猜出玩家想要的那一张" 描述的是一个基于C++编程语言设计的简单猜牌游戏。在这个游戏中,玩家会被展示15张牌,并有三次机会来尝试猜测他们心中想要的那张牌。游戏的核心在于通过玩家给出的...
在“猜牌游戏”这个压缩包文件中,我们可以期待找到相关的源代码、数据集、游戏规则文档等资源。通过阅读代码,我们可以进一步了解具体的技术实现细节,如如何处理牌型、如何应用智能算法以及如何实现用户交互等。 ...
标题“RED_A.rar_猜牌”暗示我们正在处理一个与猜牌游戏相关的程序或资源包。这个游戏的独特之处在于它只显示三张牌,并且玩家需要猜测哪一张是红色的Ace(红新A)。这种类型的猜牌游戏通常涉及到逻辑推理和概率计算...
自己写的一个j2me手机游戏,模拟游戏机厅的老虎机,一个项目开发过程 包括开发文档 使用说明书 海报 以及 源码 已经在真机上完成测试 只支持320*240像素