关于自我描述数

(TED-Ed视频:达芬奇谜题)

以下内容包含5个部分:1)什么是“自我描述数”;2)“自我描述数”的特征;3)低位“自我描述数”的穷举;4)高位“自我描述数”的一般公式;5)从最小到最大的“自我描述数”

1.什么是“自我描述数”?

第一件事当然是界定定义,所谓的“自我描述数”,汉语一般翻译成“自描述数”,英文是self-descriptive number (自我描述的数字),或者 autobiographical number(自传式的数字),顾名思义,即一种能通过数字本身描述该数字自身特征的数字

用一句话来概括这种通过数字自身来描述自身特征,即:这个数字中每一个位数上的数都是该位数的数值所出现的次数。(位数从0开始计,从左到右以此类推)

这句话有一点绕,举一个具体的例子就一目了然了,就以该视频里给出的两个具体数字12103211000来说明它们为什么是自描述数。

根据上述的位数规则,每个数字的位置编号从左到右分别是0、1、2、3……,所以对于1210来说:第一位数,即0号位上的取值便是该位置号“0”在这个数字中出现的次数,“0”在1210中出现了1次,所以第一个数即0号位上的值是1;第二位数的取值是该位置即1号位的“1”在这个数字里出现的次数,“1”出现了两次,所以这个位置上的值是2;以此类推,第三位数字的取值是“2”出现的次数1,第四位数字的取值是“3”出现的次数0。

对于3211000来说:“0”出现了3次,所以第一个数是3;“1”出现了2次,所以第二个数是2;“2”出现了1次,所以第三个数是1;“3”出现了1次,所以第四个数是1;“4”、“5”、“6”均出现了0次,所以最后三个数(4/5/6号位)均是0。

这就是自身能够描述自身、自己讲述自己的“自我描述数”

2.“自我描述数”的重要特征

从“自我描述数”的定义本身,我们可以立即发现它的一个重要特征,可以称其为“定理一”:一个自我描述数的所有数字的和等于它的位数

原因是很简单的:因为每个数值都是其位置号所出现的次数,是对位数的统计,所以次数的总和必然等于这个数字的总位数。

比如上述中的4位数的自我描述数1210,便有1+2+1+0=4

上述中的7位数的自我描述数3211000,便有3+2+1+1+0+0+0=7.

这个定理一看似简单,但对我们下面的推理非常重要。

另外一个也是看似简单但也很重要的问题是:自我描述数的第一个数可能是0吗?(即0号位上的数可能是0吗?)

假设0号位上的数值是0,这说明该数字中没有一个“0”,这与“0号位上的0”相悖,所以不能成立,所以自我描述数的第一个数字不能是0。所以,0不是自我描述数。

这句话看着很简单,但它有一个重要的含义:自描述数的第一个数字一定是大于0的。也就是说,一个自描述数中,一定有“0”,但第一个数一定不能是“0”。我们可以把这句话界定为“定理二”

搞清楚定理一和定理二,下面的推理就比较简单了。

3.低位“自我描述数”的穷举

在清楚了“自我描述数”的定义后,我们可以试着穷尽十进制中的自我描述数。自然是从小到大来尝试。

根据“定理一”,我们可以立即断定:个位数中没有自描述数。因为一个数据要满足既要有0但第一个数又不能是0,它必须至少是个两位数。

那么两位数中有没有自描述数呢?

对于两位数来说,要满足既要有“0”但第一个数不能是“0”,它就只能是“x0”,其中“x”的值是对“0”出现次数的描述,所以它只能是“1”;这个数里既然有“1”,那么“1号位”上的数就应该是“1”,这与“1号位”上的“0”相悖,所以两位数中也没有自描述数

对于三位数来说,能符合定理一和定理二的三位数只有如下5个:300,201,210,102,120,而这5个数均不是自我描述数(简单的排除法:300中0没有出现3次,201、210中0没有出现2次,102中2没有出现2次,120中1没有出现2次),所以三位数中也没有自我描述数

对于四位数来说,我们可以做如下穷尽过程:1)假设第一个数字如果是4,后面要有4个0,这就变成五位数了,所以排除;2)假设第一个数字如果是3,说明后面3个数字都是0,而这不符合定理一,所以排除;3)假设第一个数字如果是2,说明后面三个数中有2个0,根据定理一另外一个数也是2,只有2200和2020两种可能,通过检验2200排除,2020是自描述数;4)假设第一个数字是1,后面只能有1个0,而另外两个数加起来得是3,所以另外两个数是1和2,所以这是一个由两个“1”、一个“2”、一个“0”组成数字,没有出现“3”,所以“3号位”也就是最后一位数是“0”,出现了一个“2”,所以在“2号位”上的数是“1”,所以这个数字是1210,这与上述视频中给出的例子是相符的。

也就是说,在四位数中有两个自我描述数:1210和2020

上面我们通过穷尽法确定了一位数、两位数、三位数中不存在“自我描述数”,并成功找出四位数中的两个“自我描述数”。那么,更高位数的“自我描述数”如何寻找呢?比如这个视频中要求找出十位数的“自我描述数”,如果用这种穷尽法寻找,那就太辛苦了,找是能找得出来的,但是耗时肯定太长了。

所以我们要寻找一般性的方法。

4.高位“自我描述数”的一般公式

通过上述穷尽的过程,尤其是对四位数中的“自我描述数”穷尽寻找的过程,我们可以知道,对于一个多位“自我描述数”的寻找,第一个数字的确定非常重要,这对我们探寻一般性方法非常重要,即“自我描述数”的第一个数和它的总位数是什么关系?这是找到一般性公式的核心焦点。

即要回答两个问题:1)一个n位数的自我描述数,它的第一个数m的取值范围与n有什么关系?2)m如果确定,其他位置上的数与n、m是什么关系?

以下,我们来逐渐缩小m的取值范围。

首先,m不可能等于n,因为如果m=n,它后面需要有n个0,这就变成n+1位数了,所以m的取值一定是小于n;

其次,m有可能等于n-1吗?如果m=n-1,说明它后面的所有n-1个位置上全部都是0,而这串数的总和是n-1,并不等于n,与定理一相悖,所以m的取值一定是小于n-1;

再次,m有可能等于n-2吗?如果m=n-2,说明它后面有n-2个0,以及另外一个非零的数x,也就是说,这串数中只有两个数非0,一个是m,一个是x,根据定理一(m+x=n),所以x=2,即当m=n-2时,另外一个非0的数只能是2。这是什么意思呢?这句话的意思是这两个非0的数是相同的(出现了2次),即m=n-2=2,所以n=4,m=2,即:只有在四位数的时候,m可以等于n-2,这时的自描述数是上面通过穷尽法找出来的2020。这是m可以等于n-2的唯一特殊情况,在其他任何情况,m都不可以等于n-2

即,通过上述推理,我们可以得到m取值的最大可能值:m≤n-3

那么m的最小可能值是多少呢?这要从另外一个思路来分析。

一个自描述数的第一个数字是m,表示这列数中有m个0,和n-m个非0。n-m个非0中,一个是m本身,及另外n-m-1个非0。根据定理一,m加上这n-m-1个非0的数之和是n,即:除首数字后的n-m-1个数的和是n-m,所以只能是n-m-2个1,和1个2。(举例:5个非零数的和是6,那必然是4个1和1个2)

所以,一个自描述数必然由这么几个数字组成:m、0、1、2(其中0有m个,1有n-m-2个,2有1个)。

由于m表示的是“0”出现的次数,1表示的是“m”出现的次数,所以2表示的只能是“1”出现的次数。所以,如果一个自描述数中有“2”,那么说明这个数据中有两个“1”,即“1”出现的次数最多可能是2个,即:n-m-2≤2(见上,n-m-2是“1”出现的次数)。把这个式子略作变换,即m≥n-4,这就是m的最小取值

所以,一个n位自我描述数的“0”位数m的取值范围是:

n-4≤m≤n-3

即:m的取值只可能是n-3,或n-4

当m=n-3时,该自我描述数中有n-3个“0”、1个“1”、1个“2”(注:根据定理一的要求,另外两个数加起来必须是3,所以只能1个“1”及1个“2”),而此时,“2”要能够成立,必须要求该数据中有两个相同的数,即必须要求m等于1或者2。当m=1时,n=4,此时对应的自我描述数由1个“0”、2个“1”、1个“2”组成,即在前面穷尽找出的四位自我描述数1210;当m=2时,n=5,此时对应的自我描述数由2个“0”、 1个“1”、2个“2”组成,便是五位数中的自我描述数21200

因为有且只有上述两种情况,所以,只有在n等于4或5的时候,m才可以等于n-3,这时m可以取值n-3的唯二情况,在其他任何情况下,m都不可以等于n-3

再依据前面推出的m取值范围(n-4≤m≤n-3),我们可以得到当n大于五位数时m的具体取值(不是范围而是取值了)。

因为:n-4≤m<n-3

所以m=n-4(当n≥6时)

即,在所有六位及以上的自我描述数中,其“0号位”上的数字m永远等于n-4

而另外三个非零数之和必须是4(还是定理一要求),所以只能是两个“1”和一个“2”。

所以,所有n位(n≥6)自我描述数由如下几个数字组成:有1个等于n-4的“m”、n-4个“0”、2个“1”、1个“2”

但是这里面有一个特殊情况需要讨论,即当n-4=2时,这个结论无法成立。即当n=6时,m=6-4=2,于是这个数据变成了2个“0”、2个“1”、2个“2”, “0”、 “1”、“2”出现的次数是二次,所以要有3个“2”来完成自描述,这又与整个数据中有2个“2”相悖,所以不能成立。所以六位数中不存在自描述数

所以,上述结论要调整成:所有n位(n≥7)自我描述数由如下几个数字组成:1个等于n-4的“m”、n-4个“0”、2个“1”、1个“2”

这就完全正确了,因为此时n≥7,保证了n-4≥3,即m永远大于2,与其他的数字不再有重复的可能性。

但这还不是最后的结果,距离最后结果只差一步:确定位置

首先m的位置是早就确定的,它是对m个“0”的描述,它在“0号位”,它的值等于n-4;

其次,“2”是对2个“1”的描述,所以它的位置在“1号位”,即紧贴着m;

再次,两个“1”中,一个是对“m”的描述,一个是对“2”的描述,所以一个在“2号位”,另一个在“m号位”即“n-4号位”。

必须要注一下:由于位数是从0号开始排序,所以第二个“1”所在的位置“n-4”号位便是整个数据的第“n-3”个数,它的后面有3个“0”,所以它的前面(即两个“1”之间)有n-7(即n-4-3)个“0”。

所以,一个n位(n≥7)自我描述数的一般式便是:

n-4,2,1,……,1,0,0,0 

(其中省略号表示n-7个0)

所以,我们只需要根据位数,就可以立即写出这个位数的自我描述数。而每个自我描述数之间的区别仅仅是:第一个数“n-4”根据位数“n”变化,两个“1”之间的“0”的个数(n-7)根据位数“n”变化,其他6个位置的数没有任何变化。这就是自我描述数的真正秘密。

所以,我们能立即写出七位数的自我描述数是:3211000;(第一个数是7-4=3,两个“1”之间有7-7=0个0,其他6个数不变)

以及十位数的自我描述数是:6210001000;(第一个数是10-4=6,两个“1”之间有10-7=3个0,其他6个数不变)

这两个数便是开篇视频中谈到的两个自描述数(其中的十位自我描述数便是视频中要解答的谜题)。

5.从最小到最大的“自我描述数”

基于以上推理,我们可以迅速地从最小到最大写出十进制中全部的自我描述数。如下。

1位数:不存在

2位数:不存在

3位数:不存在

4位数:1210和2020

5位数:21200

6位数:不存在

7位数:3211000

8位数:42101000

9位数:521001000

10位数:6210001000

11位数:72100001000

12位数:821000001000

13位数:9210000001000

由于单个位置上的最大阿拉伯数字只能是9,所以用阿拉伯数字表示的最大十进制自我描述数便是13位的9210000001000

当然,如果超越阿拉伯数字的范畴,第一个数字用其他符号来表示,比如用英文字母abcd……来表示10/11/12/13……,那么十进制的自我描述数的范畴可以继续扩大、无限扩大

举例而言,用英文字母中的第16个字母p”来表示25(=9+16),用第8个字母h”来表示17(=9+8),我们就可以分别得到一个29位自我描述数和一个21位自我描述数:

p2100000000000000000000001000

(29位自我描述数,第一个数为p=29-4=25,两个1之间有29-7=22个0,其他6个位置的数无变化)

h21000000000000001000

(21位自我描述数,第一个数为h=21-4=17,两个1之间有21-7=14个0,其他6个位置的数无变化)

以上便是对此前所转视频“自我描述数”的全部解读。能读到这里的人都是热爱知识热爱数学的人,谢谢。

(该封面图来自于TED-Ed视频截图)

(完)

-------------阵亡的ph手记是永恒的分割线-------------

ph手记的前世与今生
(0)

相关推荐