社区
非技术版
帖子详情
猜数字
eminena
2003-10-19 04:57:14
老师从1到50之间(大于1小于50)选了两个自然数,将二者之积告诉同学P(Product),二者之和告诉同学S(Sum),问两位同学能否推出这两个自然数?
S说:我知道你不知道这两个数,但我也不知道。
P说:我还是不知道。
S说:我知道这两个数啦!
P说:我也知道啦!
其他同学:我们也知道啦!
……
问:老师选出的两个自然数是什么?
...全文
109
8
打赏
收藏
猜数字
老师从1到50之间(大于1小于50)选了两个自然数,将二者之积告诉同学P(Product),二者之和告诉同学S(Sum),问两位同学能否推出这两个自然数? S说:我知道你不知道这两个数,但我也不知道。 P说:我还是不知道。 S说:我知道这两个数啦! P说:我也知道啦! 其他同学:我们也知道啦! …… 问:老师选出的两个自然数是什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jdsnhan
2003-10-24
打赏
举报
回复
这也是一个好帖子,挖出来。
eminena
2003-10-22
打赏
举报
回复
提示:
请按以下例题的思路解答:
题:
一个教授逻辑学的教授,有三个学生,而且三个学生均非常聪明!
一天教授给他们出了一个题,教授在每个人脑门上贴了一张纸条并告诉他们,每个人的纸条上都写了一个正整数,且某两个数的和等于第三个!(每个人可以看见另两个数,但看不见自己的)
教授问第一个学生:你能猜出自己的数吗?回答:不能;
问第二个,不能;
第三个,不能;
再问第一个,不能;
第二个,不能;
第三个:我猜出来了,是144!
教授很满意的笑了。请问您能猜出另外两个人的数吗? 请说出理由!
答案:
答案是:36和108
思路如下:
首先说出此数的人应该是二数之和的人,因为另外两个加数的人所获得的信息应该是均等的,在同等条件下,若一个推不出,另一个也应该推不出。(当然,我这里只是说这种可能性比较大,因为毕竟还有个回答的先后次序,在一定程度上存在信息不平衡)
另外,只有在第三个人看到另外两个人的数是一样时,才可以立刻说出自己的数。
以上两点是根据题意可以推出的已知条件。
如果只问了一轮,第三个人就说出144,那么根据推理,可以很容易得出另外两个是48和96,怎样才能让老师问了两轮才得出答案了?这就需要进一步考虑:
A:36(36/152) B:108(108/180) C:144(144/72)
括弧内是该同学看到另外两个数后,猜测自己头上可能出现的数。现推理如下:
A,B先说不知道,理所当然,C在说不知道的情况下,可以假设如果自己是72的话,B在已知36和72条件下,会这样推理——“我的数应该是36或108,但如果是36的话,C应该可以立刻说出自己的数,而C并没说,所以应该是108!”然而,在下一轮,B还是不知道,所以,C可以判断出自己的假设是假,自己的数只能是144!
workhand
2003-10-22
打赏
举报
回复
高深,不明白
zhangdatou
2003-10-22
打赏
举报
回复
up
云帆
2003-10-21
打赏
举报
回复
up
eminena
2003-10-21
打赏
举报
回复
up
klbt
2003-10-19
打赏
举报
回复
sorry,漏了四个:
2*2*7=28
2*3*5=30
2*2*3*3=36
2*2*11=44
总结一下就是:
8、12、16、18、20、24、27、28、30、32、36、40、44、45、48
klbt
2003-10-19
打赏
举报
回复
好问题!我试试,抛砖引玉:
S说:我知道你不知道这两个数,但我也不知道。
----------------------------------------------------------------------------
说明该数字的素因子至少是3个(包括相同的,如2*2*3),否则P应该马上分解出来。
可能的有:
2*2*2=8
2*2*2*2=16
2*2*2*2*2=32
2*2*3=12
2*2*2*3=24
2*2*2*2*3=48
2*3*3=18
3*3*3=27
3*3*5=45
2*2*5=20
2*2*2*5=40
python实现
猜数字
游戏
欢迎光临我的blog!!!下面我将用python实现
猜数字
游戏。 用python实现
猜数字
游戏可以加深python初学者循环结构的理解和运用。
猜数字
游戏规则如下:电脑程序随机生成一个数字,作为
猜数字
游戏的最终答案,用户在键盘输入所
猜数字
。用户每猜一次程序都会做出相应的提示。若用户输入所猜的数字小于电脑随机生成的数字,则提示“你猜小了”;若大于,则提示“你猜大了”;若等于,则提示“恭喜你,猜对了”。 这里我们需要用到一个随机生成数字的库:random,使用如下: #导入随机生成模块 import
Java简单
猜数字
游戏
我们经常在日常生活中与朋友玩或者看到过别人玩
猜数字
游戏(数字炸弹),非常的有趣。现在我们通过java把这个
猜数字
游戏编写出来。 这个游戏的功能就是你出个数字、我来猜。 游戏操作如下: 1.后台预先生成一个1-100之间的随机数,用户键盘录入
猜数字
2.如果猜对了,打印“恭喜您,答对了” 3.如果猜错了 猜大了:打印“sorry,您猜大了!” 猜小了...
运用Python实现
猜数字
游戏
猜数字
游戏 一、
猜数字
猜数游戏是一个古老的密码破译类、益智类小游戏,通常由两个人参与,一个人设置一个数字,一个人
猜数字
,当
猜数字
的人说出一个数字,由出数字的人告知是否猜中:若猜测的数字大于设置的数字,出数字的人提示“很遗憾,你猜大了”;若猜测的数字小于设置的数字时,出数字的人提示“很遗憾,你猜小了”;若
猜数字
的人在规定的次数内猜中设置的数字,出数字的人提示“恭喜,猜数成功”。本实例要求编写程序,实现上述规则的
猜数字
游戏,并限制猜数机会只有5次...
七上八下
猜数字
_
猜数字
游戏,1到100
猜数字
游戏规则
注意本程序使用rand函数此函数在此程序中默认随机值为1275可以用来测试程序#include#in...注意本程序使用rand函数此函数在此程序中默认随机值为1275可以用来测试程序#include#in...计算机实习报告面向过程编程用C语言求解实际问题一、问题描述游戏类第15个任务——
猜数字
游戏任务描述:...计算机实习报告面向过程编程用C语言求解实际问题一、问题描述游戏类第15个任务——猜...
Python之
猜数字
游戏
猜数字
游戏由两个人参与,一个人设置一个数字,一个人
猜数字
。当
猜数字
的人说出一个数字,由出数字的人告知是否猜中: 若猜测的数字大于设置的数字,出数字的人提示“很遗憾,你猜大了” 若猜测的数字小于设置的数字,出数字的人提示“很遗憾,你猜小了” 若
猜数字
的人在规定的次数内猜中设置的数字,出数字的人提出“恭喜,猜数成功!” 输入“q”则退出程序。
非技术版
397
社区成员
11,520
社区内容
发帖
与我相关
我的任务
非技术版
PowerBuilder 非技术版
复制链接
扫一扫
分享
社区描述
PowerBuilder 非技术版
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章