(IBM的面试题)2.已知两个数字为1~30之间的数字,甲知道两数之和,29乙知道两数之积,28甲问乙:“你知道是哪两个数吗?”乙说:乙问甲:“你知道是哪两个数吗?”甲说:于是,乙说:“那我
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/22 14:57:25
(IBM的面试题)2.已知两个数字为1~30之间的数字,甲知道两数之和,29乙知道两数之积,28甲问乙:“你知道是哪两个数吗?”乙说:乙问甲:“你知道是哪两个数吗?”甲说:于是,乙说:“那我
(IBM的面试题)
2.已知两个数字为1~30之间的数字,甲知道两数之和,29乙知道两数之积,28甲问乙:“你知道是哪两个数吗?”乙说:乙问甲:“你知道是哪两个数吗?”甲说:于是,乙说:“那我知道了”,随后甲也说:“那我也知道了”,这两个数是什么?
1和4,或4和7.
(IBM的面试题)2.已知两个数字为1~30之间的数字,甲知道两数之和,29乙知道两数之积,28甲问乙:“你知道是哪两个数吗?”乙说:乙问甲:“你知道是哪两个数吗?”甲说:于是,乙说:“那我
楼主的答案不对答案只有1和7
分析:
因为乙先说知道,说明乙通过这个乘积可以确定一组唯一的数,而甲后说知道了,说明甲通过乙提供的信息及两数之和也能确定唯一的一组数
先看乘积
如果是1和4,则乘积为4,可分解为1*4,2*2,不是唯一的一组
如果是1和7,则乘积为7是质数,可以分解为1*7,是唯一的一组
如果是4和7,则乘积为28,可分解为,4*7,2*14,1*28,不是唯一的一组
如果是1和17,则乘积为17是质数,可分解为1*17,是唯一的一组
如果是4和17,则乘积为68,可分解为2*34(不符合条件),和4*17,是唯一的一组
如果是7和14,则乘积为98,可分解为49*2(不符合条件),和7*14,是唯一的一组
由此筛选出1和7,1和17,4和17,7和14
在看两数之和
如果是1和7,则和为8,可分解为,1+7,2+6,3+5,4+4
1、如果分解为2+6,则乘积为12,不能确定唯一的一组数相乘
2、如果分解为3+5,则乘积为15,不能确定唯一的一组数相乘
3、如果分解为4+4,则乘积为16,不能确定唯一的一组数相乘
4、如果分解为1+7,则乘积为7,能确定唯一的一组数相乘
因此1和7成立
如果是1和17,则和为18,可分解为1+17,2+16,3+15.9+9
其中,如果分解为1+17,则乘积为17,能确定唯一的一组数相乘
如果分解为5+13,则乘积为65,能确定唯一的一组数相乘
这样至少有两组解符合条件
因此1和17不成立
如果是4和17,则和为21
其中
如果分解为2+19,则乘积为38,能确定唯一的一组数相乘
如果分解为4+17,则乘积为68,能确定唯一的一组数相乘
这样至少有两组解符合条件
因此4和17不成立
如果是7和14,则和为21
其中
如果分解为2+19,则乘积为38,能确定唯一的一组数相乘
如果分解为4+17,则乘积为68,能确定唯一的一组数相乘
这样至少有两组解符合条件
因此4和17不成立
总上,只有1和7符合条件
晕..好难啊...得仔细想想...
1和4好象不行吧?
如果我是乙 我手里是4 可能是1*4或2*2 能猜到甲手里不是5就是4
如果甲手里是4的话 那么甲可以猜到我手里是3或4 然而我第一次回答不知道 所以甲知道我手里肯定不是3(如果我手里是3 很容易就知道是1,3) 于是他知道我手里是4(这样的话 他就能猜到数是1,4 一次问答甲就知道答案了) 所以我知道,甲手里不是4 肯定是5 于是甲问完我之后我就能猜出来...
全部展开
1和4好象不行吧?
如果我是乙 我手里是4 可能是1*4或2*2 能猜到甲手里不是5就是4
如果甲手里是4的话 那么甲可以猜到我手里是3或4 然而我第一次回答不知道 所以甲知道我手里肯定不是3(如果我手里是3 很容易就知道是1,3) 于是他知道我手里是4(这样的话 他就能猜到数是1,4 一次问答甲就知道答案了) 所以我知道,甲手里不是4 肯定是5 于是甲问完我之后我就能猜出来数了 而不用我再次问甲
所以1和4我觉得不行 不满足两次问答的条件(从甲最后那个"那""也"字知道 甲是在乙知道答案后才知道的 需要两次问答)
4,7也不行
甲手里11 乙手里28
甲知道可能是(1,10)(2,9)(3,8)(4,7)(5,6) 每组数的乘积都是合数 乙回答不知道 那么甲没法排除任何一组解
乙知道可能是(1,28)(2,14)(4,7) 和是29,16,11 每个数都有5组以上解 甲回答不知道 那么乙没法排除任何一组解 不可能猜到两个数是什么
1,7也不行 乙说"那我知道了"所以乙肯定是通过问答才能知道两个数是什么 而乙手里是7 不用问就能知道
收起