腾讯笔试题
声明:题目来自网络,答案大部分来自网络并经过整理;有些是自己查资料和请教他人得来的。
1.两个人A,B。数字为2-100之间的自然数。现找出两个数,把其和告诉A,把其积告 诉B。然后问A知道不知道是哪两个数,A说:“虽然我不知道,但是肯定B也不知道。” 再问B,B说:“本来我不知道,但是听到A说这句话,现在我知道了。”,A听到B说他 知道了,然后就说:“现在我也知道了”。那么这两个数是多少呢?
符号假设:A:a+b=s B:a*b=m 1.A说:“虽然我不知道,但是肯定B也不知道。” A不知道,可推出s有两个以上的和分解,如6=2+4=3+3; A肯定B不知道,可推出m有两个以上的积分解,即s的所有可能的和分解的两个数不能同时为素数; 此时可以得出s的一些可行解:11,17,23,27,29,35,37,41,47,51,53,57,59...; 通过以上列出得和,推出积的可能性: 和->积 11->18,24,28,30 17->30,42,52,60,66,70,72 23->42,60,76,90,102,112,120... 27->50,72,92,110,126,140,152... 29->54,78,100,120,115,138,154... 35->66,96,124,150,174,196... 37->70,102,132,160,186,210... 2.B说:“本来我不知道,但是听到A说这句话,现在我知道了。” B能知道A的推理过程,B说他知道了,因此首先可以去掉那些重复的积: 11->18,24,28 17->52 23->42,76... 27->50,92... 29->54,78... 35->96,124... 37->132,160... 3.A听到B说他 知道了,然后就说:“现在我也知道了”。 A也能知道B的推理过程,A说他知道了,因此可推出积是唯一的,即52 所有两个数分别为4和13,和为17,积为52