两个数学家的问题,“你不知道我不知道你知道我知道”
2009-05-18 11:04
746 查看
已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。
甲问乙:“你知道是那两个数么?”乙说:不知道。
乙问甲:“你知道是那两个数么?”甲说:也不知道。
于是乙说:那我知道了
随后甲说:那我也知道了。
这两个数是什么?
允许两数重复的情况下,答案为 x=1,y=4。
甲知道和A=x+y=5,乙知道积B=x*y=4
不允许两数重复的情况下有两种答案
答案1:为x=1,y=6;甲知道和A=x+y=7,乙知道积B=x*y=6
答案2:为x=1,y=8;甲知道和A=x+y=9,乙知道积B=x*y=8
设这两个数为x,y.
甲知道两数之和 A=x+y;
乙知道两数之积 B=x*y;
该题分两种情况 :
允许重复, 有(1 <= x <= y <= 30);
不允许重复,有(1 <= x < y <= 30);
当不允许重复,即(1 <= x < y <= 30);
1)由题设条件:乙不知道答案 <=> B=x*y 解不唯一 => B=x*y 为非质数
又∵ x ≠ y
∴ B ≠ k*k (其中k∈N)
结论(推论1):B=x*y 非质数且 B ≠ k*k (其中k∈N)
即:B ∈(6,8,10,12,14,15,18,20...)
证明过程略。
2)由题设条件:甲不知道答案 <=> A=x+y 解不唯一 => A >= 5;
分两种情况:
A = 5, A = 6 时 x, y 有双解
A >= 7 时 x, y 有三重及三重以上解
假设 A=x+y=5
则有双解
x1=1,y1=4;
x2=2,y2=3
代入公式B=x*y:
B1=x1*y1=1*4=4;(不满足推论1,舍去)
B2=x2*y2=2*3=6;
得到唯一解x=2,y=3即甲知道答案。
与题设条件:"甲不知道答案"相矛盾 ,
故假设不成立,A=x+y≠5
假设 A=x+y=6
则有双解:
x1=1,y1=5;
x2=2,y2=4
代入公式B=x*y:
B1=x1*y1=1*5=5;(不满足推论1,舍去)
B2=x2*y2=2*4=8;
得到唯一解x=2,y=4
即甲知道答案
与题设条件:"甲不知道答案"相矛盾
故假设不成立,A=x+y≠6
当A>=7时
∵ x,y的解至少存在两种满足推论1的解
B1=x1*y1=2*(A-2)
B2=x2*y2=3*(A-3)
∴ 符合条件
结论(推论2):A >= 7
3)由题设条件:乙说“那我知道了”=>乙通过已知条件B=x*y及推论(1)(2)可以得出唯一解
即:
A=x+y, A >= 7
B=x*y, B ∈(6,8,10,12,14,15,16,18,20...)
1 <= x < y <= 30
x, y存在唯一解
当 B=6 时:有两组解
x1=1,y1=6
x2=2,y2=3 (∵ x2+y2=2+3=5 < 7∴不合题意,舍去)
得到唯一解 x=1,y=6
当 B=8 时:有两组解
x1=1,y1=8
x2=2,y2=4 (∵ x2+y2=2+4=6 < 7∴不合题意,舍去)
得到唯一解 x=1,y=8
当 B>8 时:容易证明均为多重解
结论:
当B=6时有唯一解 x=1,y=6当B=8时有唯一解 x=1,y=8
4)由题设条件:甲说“那我也知道了” => 甲通过已知条件 A=x+y 及推论(3)可以得出唯一解
综上所述,原题所求有两组解:
x1=1,y1=6
x2=1,y2=8
当x <=y时,有(1 <= x <= y <= 30);
同理可得唯一解 x=1,y=4
甲问乙:“你知道是那两个数么?”乙说:不知道。
乙问甲:“你知道是那两个数么?”甲说:也不知道。
于是乙说:那我知道了
随后甲说:那我也知道了。
这两个数是什么?
允许两数重复的情况下,答案为 x=1,y=4。
甲知道和A=x+y=5,乙知道积B=x*y=4
不允许两数重复的情况下有两种答案
答案1:为x=1,y=6;甲知道和A=x+y=7,乙知道积B=x*y=6
答案2:为x=1,y=8;甲知道和A=x+y=9,乙知道积B=x*y=8
设这两个数为x,y.
甲知道两数之和 A=x+y;
乙知道两数之积 B=x*y;
该题分两种情况 :
允许重复, 有(1 <= x <= y <= 30);
不允许重复,有(1 <= x < y <= 30);
当不允许重复,即(1 <= x < y <= 30);
1)由题设条件:乙不知道答案 <=> B=x*y 解不唯一 => B=x*y 为非质数
又∵ x ≠ y
∴ B ≠ k*k (其中k∈N)
结论(推论1):B=x*y 非质数且 B ≠ k*k (其中k∈N)
即:B ∈(6,8,10,12,14,15,18,20...)
证明过程略。
2)由题设条件:甲不知道答案 <=> A=x+y 解不唯一 => A >= 5;
分两种情况:
A = 5, A = 6 时 x, y 有双解
A >= 7 时 x, y 有三重及三重以上解
假设 A=x+y=5
则有双解
x1=1,y1=4;
x2=2,y2=3
代入公式B=x*y:
B1=x1*y1=1*4=4;(不满足推论1,舍去)
B2=x2*y2=2*3=6;
得到唯一解x=2,y=3即甲知道答案。
与题设条件:"甲不知道答案"相矛盾 ,
故假设不成立,A=x+y≠5
假设 A=x+y=6
则有双解:
x1=1,y1=5;
x2=2,y2=4
代入公式B=x*y:
B1=x1*y1=1*5=5;(不满足推论1,舍去)
B2=x2*y2=2*4=8;
得到唯一解x=2,y=4
即甲知道答案
与题设条件:"甲不知道答案"相矛盾
故假设不成立,A=x+y≠6
当A>=7时
∵ x,y的解至少存在两种满足推论1的解
B1=x1*y1=2*(A-2)
B2=x2*y2=3*(A-3)
∴ 符合条件
结论(推论2):A >= 7
3)由题设条件:乙说“那我知道了”=>乙通过已知条件B=x*y及推论(1)(2)可以得出唯一解
即:
A=x+y, A >= 7
B=x*y, B ∈(6,8,10,12,14,15,16,18,20...)
1 <= x < y <= 30
x, y存在唯一解
当 B=6 时:有两组解
x1=1,y1=6
x2=2,y2=3 (∵ x2+y2=2+3=5 < 7∴不合题意,舍去)
得到唯一解 x=1,y=6
当 B=8 时:有两组解
x1=1,y1=8
x2=2,y2=4 (∵ x2+y2=2+4=6 < 7∴不合题意,舍去)
得到唯一解 x=1,y=8
当 B>8 时:容易证明均为多重解
结论:
当B=6时有唯一解 x=1,y=6当B=8时有唯一解 x=1,y=8
4)由题设条件:甲说“那我也知道了” => 甲通过已知条件 A=x+y 及推论(3)可以得出唯一解
综上所述,原题所求有两组解:
x1=1,y1=6
x2=1,y2=8
当x <=y时,有(1 <= x <= y <= 30);
同理可得唯一解 x=1,y=4
相关文章推荐
- ACCESS模糊查询出现的变态问题,不知道该问题的希望注意,知道内幕的高手还望给小弟一个解释 Thanks
- 知道其两个遍历序列,求其第三种遍历序列的问题。
- 把两个数和告诉A,积告诉B,A说不知道是多少, B也说不知道,这时A说我知道了, B接着说我也知道了,求这两个数是什么
- 这段时间太忙了,整天都不知道干了些什么,就知道是没停过。
- 安装SQL Server 2000时出现以下错误提示:“以前的某个程序安装已在安装计算机创建挂起的文件操作,运行安装程序之前必须重新启动计算机” 说明:如果重启计算机无法解决问题,可能有以下两个原因
- 嵌入式程序员应知道的0x10个基本问题
- 工作中遇到的两个编码问题
- Android中添加两个(多个)FileProvider节点问题
- 编程之美-判断两个链表是否相交 (涵其扩展问题)
- 摘之网上,两个很基本的问题的解答。
- 通过View.post()获取View的宽高引发的两个问题:1post的Runnable何时被执行,2为何View需要layout两次;以及发现Android的一个小bug
- 我知道你不知道的负Margin
- 你可能不知道的编程小问题:预处理、sizeof
- 定制Queue-assignment-policy两个问题及解决方法
- 第八章 数据处理的两个基本问题
- Python程序员鲜为人知但你应该知道的17个问题
- 虚拟机的双屏显示问题(虚拟机控制两个屏幕)(来自官方帮助文档)
- 涨姿势:香港高防主机租用必须知道的问题,点击看进来!货比三家,才能正确的选择!
- day5:遇到的两个问题
- 王爽《汇编语言》(第二版) 学习笔记 (第八章 数据处理的两个基本问题 )