鬼谷子问题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

鬼谷子问题

孙膑,庞涓都是鬼谷子的徒弟;一天鬼出了这道题目:他从2到99中选出两个不同的整数,把积告诉孙,把和告诉庞。

庞说:我虽然不能确定这两个数是什么,但是我肯定你也不知道这两个数是什么。

孙说:我本来的确不知道,但是听你这么一说,我现在能够确定这两个数字了。

庞说:既然你这么说,我现在也知道这两个数字是什么了。

问这两个数字是什么?

个人思路:

1、庞说:我虽然不能确定这两个数是什么,但是我肯定你也不知道这两个数是什么。

这句话就是说,我庞涓根据这两个数的和,我就知道,你孙膑不能确定这两个数

首先,我们得了解一下,“孙膑不能确定”这话是什么意思。

孙膑知道的是积,这个积由两个整数相乘所得,假如这个数是12,那么相乘可以得到12的两个数可以是3与4,也可以是2与6,这时,孙膑不能确定;假如这个数是15,那么相乘的两个数只能是3与5,这个时候孙膑能确定。所以“孙膑不能确定”这个意思就是,孙膑的所知道的积,可以由两组以上数字相乘所得,用一个数学上的语言描述就是,这个积E=a*b,a与b至少有一个是非素数。

好了,知道“孙膑不能确定”是什么意思后就剩下这个问题了。在什么样的情况下庞涓才能确定地说,“孙膑你不能确定”?换句话就是说,庞涓在什么情况下才能确定地说,这两个数,至少有一个是非素数?

庞涓知道的是这两个数的和,根据这个和,他可以知道这两个数的所有可能组成。那么只有当所有的可能组成都至少有一个非素数时,庞涓才能确定,这两数,至少有一个非素数,否则不能。(根据此求到集合:{d},集合{d}的意义请往下看)

例如:这个和为10,10的值可以是2+8,3+7,4+6,那么这两个数可能是2和8,可能是3和7,也可能是4和6。这个时候,庞涓是不能确定这两个数至少有一个为非素数,因为3和7都是素数;又例如这个数的和为11,11的值可以是2+9,3+8,4+7,5+6,这个时候,无论这两个数是当中的哪一组,庞涓都能确定,至少有一个为非素数。

所以根据庞涓这个判断,我们可以判断出,庞涓所知道的和d,要满足这样的条件:(2,d-2)、(3,d-3)、(4,d-4)、、、、(n,d-n)这些数中,每一组,至少有一个为非素数。换句话说,庞涓的话给出了和d的值的一个集合。设这个集合为:{d}

2、孙说:我本来的确不知道,但是听你这么一说,我现在能够确定这两个数字了。

根据庞涓所说的,孙膑能够确认这两数。就是说,根据庞涓所给的信息,孙膑能够确定这两个数。那么庞涓给出什么信息?庞涓告诉了孙膑,这两个数的和,在集合{d}里面。

那么这个时候,只有当孙膑所知道的积E,在写成a*b的形式时,只有一种情况,a+b 的值在集合{d}内,孙膑才能确定这两个数,否则不能。(“孙膑条件”,我们姑且这样表达)

如:E=18,那么E可以写成:3*6,也可以写成2*9,那么这个情况,就只有2+9的和在集合{d}内,这时就能确定这两个数分别为2和9。但假如3和6的和也在这个集合{d}内,那么就不能知道这两个数是2与9还是3与6。(注:这只是假设个例子,3+6=9,9并不在集合{d}内)

3、庞说:既然你这么说,我现在也知道这两个数字是什么了。

庞涓说,既然你能确定了,那我也能确定了。那么孙膑提供了什么信息给庞涓呢?孙膑告诉他,我的这个积E,在写成a*b的形式时,只有一种情况,a+b的值才在集合{d}内。

庞涓知道两数和d,那么只有当2*(d-2)、3*(d-3)、4*(d-4)、、、、、、这些乘值(设这些乘值组成一个集合{c}),有且只有一个值满足“孙膑条件”时,庞涓才能确定这两个数是什么。就是说,集合{c}中的数,有且只有一个数满足这个条件(这条件是:在这个数写成所有a*b的形式时,只有一种情况的a和b的和在集合{d}内),庞涓才能确定这两个数是什么。

说起来有点拗口,举个例子。例如,这两个数的和为17(这个数是在{d}内的),那么2*15=30,3*14=42,4*13=52,5*12=60,6*11=66,7*10=70,8*9=72,这些乘值组成一个集合:{c}={30,42,52,60,66,70,72},这集合中的元素,如30,其可以表示成2*15,也可以是3*10还也可以是5*6。但是由于2+15=17在{d}内,5+6=11在{d}内,所以30不满足“孙膑条件”。如:42,其可以表示成2*21,3*14,6*7,由于23和17都在{d}内,所以也不满足“孙膑条件”。依这个可以判断,只有42满足“孙膑条件”。也就是所,当这两和为17时,庞涓可以肯定知道这两数是什么。(4*13,这两个数一个为4,一个为13)。

在假如这两个数之和为11(11在{d}内),那么{c}={18,24,28,30},这些乘值中,没有一个能够让庞涓根据孙膑所给信息,判断出这两个数值。

解决这个问题的步骤:第一,首先要得出集合{d};

第二,根据集合{d}中的一个d值,求出集合{c};

第三,判断{c}中每一个元素c,其是否满足“孙膑条件”;

第四,{c}中若有且只有一个满足“孙膑条件”的话,那么就可以得出

这两数的和为d,积为满足“孙膑条件”的c,从而就可以得出这两

数的值;否则,这个d值不可能是庞涓所知道的和;

第五,改变d,从发2~4步。

求得集合{d}的前几个数据:11,17,23,27,29,35,37,41,47

经过判断,d=17是满足条件的,此时两数积为52,即一个数为4一个为13.

相关文档
最新文档