TOP

猜数字-2
2014-11-23 22:22:29 】 浏览:10005
Tags:数字

老师从1~50之间(大于1小于50)选了两个自然数,将两数之积告诉同学P(Product),两数之和告诉同学S(Sum),问两位同学能否推出这两个自然数?
S说:我知道你不知道这两个数,但我也不知道。
P说:我还是不知道。
S说:我知道这两个数啦!
P说:我也知道啦!
其他同学:我们也知道啦!
……
问:老师选出的两个自然数是什么?
分析与解答
说话依次编号为S1,P1,S2,P2。
设这两个数为x,y,和为s,积为p。
由S1,P不知道这两个数,所以s不可能是两个质数相加得来的,而且s<=29,因为如果s>29,那么P拿到29 (s-29)必定可以猜出s了。所以和s为{11,17,23,27,29}之一,设这个集合为A。
由P1,乘积p必定含有因子2,而且含有两个质因子,而且最大的质因子不可能大于7,(假如含有因子11,就会有p至少是11 2 3,拆成11 6或者22 3不满足条件,假如含有因子13,就会有p至少是13 2 3,拆成13 6或者26 3也不满足条件),这条规则有助于简化和s的拆分。
(1)假设s=11。
11=2+9=5+6,有18=2 9=3×6,只有2+9落在集合A中,P不会说出P1。而30=5 6=2 15,11和17都落在集合A中,所以只有这一种情况会令P说P1,所以S拿到11可以断言S2。但是问题在于P会说出P2的话,必须要s=17时S说不出S2才行。
下面看看s=17的情况,17=2+15=3+14=5+12=7+10= 8+9,由于p=2 15=5 6或p=3 14=2 21都会令P说出P1,所以s=17时S说不出S2。
所以s=11,p=30,这两个数是5和6的时候满足条件
(2)假设s=23,
23=2+21=3+20=5+18=8+15=9+14,由于p=9 14=6 21或p=3 14=2 21都会令P说出P1,所以s=23时S说不出S2。
(3)假设s=27,
27=2+25=3+24=6+21=7+20=9+18=12+15,由于p=6 21= 9 14或p=12 15=9 20都会令P说出P1,所以s=27时S说不出S2。
(4)假设s=29,29=2+27=4+25=5+24=8+21=9+20=14 +15,由于p=9 20=12 15或p=5 24=15 8都会令P说出P1,所以s=27时S说不出S2。
综上所述:这两个数只可能是5和6。



猜数字-2 https://www.cppentry.com/bencandy.php?fid=43&id=23310

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇2013年7月淘宝面试经历 电话+ 下一篇智能网试题