算术小游戏

3X+1问题

从任意一个正整数X开始,重复对其进行下面的操作:如果这个数是偶数,把它除以2;如果这个数是奇数,则把它扩大到原来的3倍后再加1。你会发现,序列最终总会变成4,2,1,4,2,1,……的循环。

例如,所选的数是67,根据上面的规则可以依次得到:67,202,101,304,152,76,38,19,58,29,88,44,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1,4,2,1,……

数学家们试了很多数,没有一个能逃脱“421 陷阱”。但是,是否对于所有的数,序列最终总会变成 4,2,1 循环呢?

这个问题可以说是一个“坑”——乍看之下,问题非常简单,突破口很多,于是数学家们纷纷往里面跳;殊不知进去容易出去难,不少数学家到死都没把这个问题搞出来。

已经中招的数学家不计其数,这可以从3X + 1问题的各种别名看出来:3X + 1问题又叫 Collatz 猜想、Syracuse问题、Kakutani问题、Hasse算法、Ulam问题,等等。

后来,由于命名争议太大,干脆直接叫作3X + 1问题了。

直到现在,数学家们仍然没有证明,这个规律对于所有的数都成立。

一个小魔术

在一张纸上并排画11个小方格,叫你的好朋友背对着你(让你看不到他在纸上写什么),在前两个方格中随便填两个1到10之间的数。从第3个方格开始,在每个方格里填入前两个方格里的数之和。让你的朋友一直算出第10个方格里的数。假如你的朋友一开始填入方格的数是7和3,那么前10个方格里的数分别是:7、3、10、13、23、36、59、95、154、249。

现在,叫你的朋友报出第10个方格里的数,稍作计算你便能猜出第11个方格里的数应该是多少。你的朋友会非常惊奇地发现,把第11个方格里的数计算出来,所得的结果与你的预测一模一样!

其实,仅凭借第10个数来推测第11个数的方法非常简单,你需要做的仅仅是把第10个数乘以1.618,得到的乘积就是第11个数了。

在上面的例子中,由于249×1.618=402.882≈403,因此你可以胸有成竹地断定,第11个数就是403。而事实上,154与249相加真的就等于403。不管最初的两个数是什么,按照这种方式加下去,相邻的两数之比总会越来越趋近于1.618,这个数正是传说中的“黄金分割”。

利用组合数学中的“生成函数”,可以完美地解释这些现象产生的原因。