欢迎您访问科普小知识本站旨在为大家提供日常生活中常见的科普小知识,以及科普文章!
您现在的位置是:首页  > 科普文章

《啊哈!灵机一动》-未入册的电话号码

科普小知识2022-07-13 12:50:21
...

猜猜电话号码

鲍勃意识到,通过问对或错的问题来判断一系列数字中某个特定成员的最有效方法如下:如果该系列数字包含偶数个成员,我们将其分成两个相等的部分,每个部分包含相等数量的数字元素。如果这个数列包含奇数个成员,我们仍将它分成两部分。这两个部分在数字元素的数量上尽可能接近。然后,我们询问这“两个部分”中的哪一个包含我们正在寻找的成员,在收到回复后,我们对指定的部分重复相同的过程。最后,在最初的系列中只剩下一个数字,那就是我们正在寻找的。

第一个问题显然是为了识别二进制序列成员。第二个问题是关于四美元系列,第三个问题是关于八美元系列,第四个问题是关于十六美元系列。一般来说,第n个问题是2n元的数列。

关于猜测电话号码的问题,24个问题足以猜测任何不大于224=16 777 216的号码,因为224大于9 999 999,而9 999 999是当7个电话号码以数字形式单独出现时具有最大的号码。然而,因为223=8 388 608比一些可能的七位数电话号码小,所以23个问题有时是不够的。

所以鲍勃的第一个问题是:“这个数字大于500万吗?这个答案立即砍掉了一半可能的7位数。以这种方式继续下去,他相信在24个或更少的问题之后,他将能够找到正确的电话号码。

因为许多人没有意识到数字的乘法速度有多快,所以他们很难相信他们能在不超过24个这样的小问题中确定1到1600万之间的任何数字。也正是因为这种快速增长,我们可以解释为什么通过“对与错”的问题来猜测一个人在想什么是如此容易,并且这个人的思维范围可以被允许在任何现有对象的范围内。如果你擅长二进制分割(例如,问一些问题,像“这是有生命的还是无生命的?”"这是动物还是植物?"等一下),你可能会从20个或更少的问题中猜出一些东西,比如有人在思考*女神像头上的王冠。

我们描述的通过24个问题猜测电话号码的过程被计算机专家称为“二进制分割”算法。通过图1所示的六张卡片进行快速计算的一个巧妙技巧是基于“二进制分类”。方法如下:把这些卡片递给一个人,让他决定1到63之间的任何一个数字,然后让他给你每张卡片,上面有他选择的数字,你可以立即识别出这个数字。

图1

事实上,这个秘密很简单,就是把那个人给你的每张卡片上的第一个数字加起来,得到的总数就是你要找的数字。

这些卡片是根据一个系统设计的。根据图2中的“二进制计数”,这个系统可以很容易地解释为1到63。图表左边的数字是十进制的,右边的每个数字都有相应的二进制表示。

图2

图表标题中的6个数字是用来形成二进制数的2的幂。“快速计算卡”上以“1”开头的数字是与图中最右边一列中值为1的行相对应的十进制列中的所有数字。卡片上以“2”开头的数字包含十进制列中的所有数字,与右边第二列为1的行相对应。其他四张卡也是通过上述过程获得的。

通过这些“快速计算卡”,很容易得出另一种基于大于2的幂的计数方法。图3说明了如何基于三元系统设计一系列卡。在这种情况下,每个三元数可以包含三个数字0、1或2。当一列中出现“1”时,我们在相应列的卡片上记录一次相应的十进制数。当“2”出现时,我们将相应的十进制数在卡片的相应栏中记录两次。

图3

图4列出了3张快速计算卡来判断从1到26中选择的数字,但是你必须让其他人告诉你,当你把每张卡递给他时,他会看到他选择的数字在卡上出现一两次。如果他(她)看了两次,那么在加法时,你必须把这张卡的第一个数字乘以2。

图4

您也可以将系统扩展到6张卡。众所周知,6张二进制卡的识别号范围是1到63,那么6张三进制卡的识别号范围是多少?答案是1比728。这样,就很容易理解如何总结比三进制数字系统更高的方法。例如,对于基于4的幂的一系列长胶片,一些数字可以在一张卡上重复两次,而另一些可以重复三次。如果你重复三次,你必须先把卡片的第一个数字乘以3,然后再相加。

三元卡说明了这样一个事实,在某些方面,三元分类比二元分类更有效。如果我们总是把一系列的数字分成三部分,而不是两部分,并且知道哪一部分包含我们要找的元素,我们可以在几个问题后猜出这个元素。然而,提问的方式不再是“对或错”。

下面的扑克游戏充分说明了三元分类的奇妙用途。它使用任何33=27张扑克牌。一个人通过一个扑克盒子看着并记下一张卡片。魔术师拿出一盒卡片,把它们正面分成三堆。然后,这个人指出他记下的是哪一叠卡片。

魔术师先把另外两堆卡片放在一个盒子里,然后把观众指出的那堆卡片分成三堆,面朝上。那人指着那堆他(她)记得的卡片。当第三次重复时,当魔术师知道他选择了哪一叠牌时,他就把这些叠牌打包,把扑克盒子面朝下放在桌子上。当观众说他(她)选择了哪张牌时,魔术师打开了扑克盒中的顶牌,那张牌恰好是观众选择的。你可以一遍又一遍地重复这个游戏,永远不会出错。

答案很简单。每当魔术师收集这三叠牌时,他会注意将包含所选牌的那一叠面朝下放在扑克盒的顶部,这自然会将所选牌推到顶部。不难理解正在发生的事情。其原理与猜测电话号码的原理相同,只是每次扑克牌被分成三堆,号码被分成两部分。第一次加载卡片后,所选卡片必须在前九张卡片中。第二次加载卡片后,该卡片必须位于前三张卡片中。第三次之后,一定是第一次。如果你看着选中的卡片朝上的过程,你可以看到它向上运动的整个过程:通过三个阶段到达顶端。利用上述同样的过程,计算机对元素的分类在现代信息重组理论中发挥了巨大的作用。