汉字黑洞

Aster CODE➤GEASS, 理宅异闻录 Leave a Comment

很久以前我写过一个系列的文章探讨了几种常见的数字黑洞.后来我又突发奇想,要是对汉字的笔画进行这样的操作,最后会收敛到哪里呢?

接下来我写了个小代码,想了想挺简单的:直接把数字IntegerDigits,然后来个Rule不就搞定了?

然后开始写才发现没这么简单,貌似没有那边二十零,一百零零这么说话的吧...12是十二,然后112就是一百一十二了.1001是一千零一,而非一千零零一......

真的写起来才发现这里面规则还蛮多的.

Read More

斐波那契算法

Aster CODE➤GEASS Leave a Comment

我们来讨论下斐波那契数列的算法.所谓斐波那契数列就是那些前两项为0,1或者1,1,后一项为前两项之和的数列.

我这里沿用Mathematica上的定义,a1=a2=1给出代码

唉,有人说斐波那契数列不是能解出解析式的吗,那不就有O(1)算法了吗,还研究啥呢.

$$f(n) = \frac{1}{{\sqrt 5 }}\left[ {{{\left( {\frac{1}{2}\left( {\sqrt 5  + 1} \right)} \right)}^n} - {{\left( {\frac{2}{{\sqrt 5  + 1}}} \right)}^n}\cos \left( {\pi n} \right)} \right]$$

编程啊不是数学,浮点数对于纯整数运算来说是没必要的,而且为了防止因浮点数产生的误差反而会加大运算量,得不偿失.

Read More

九宫格密码盘

Aster CODE➤GEASS, GameのDay, 理宅异闻录 Leave a Comment

九宫格密码盘能形成很多有趣图案,我们来鉴赏一下,我们关心的是图案的密码强度,也就是密码的种类个数.

三阶似乎有点复杂,先来个二阶的,显然旋转重合不算同一种

$$\begin{array}{*{20}{c}}
A&B \\
C&D
\end{array}$$

所以选A开始,一步的有三个选择,两步有3×2中选择,三步有3×2×1种选择

一共$4 \times (3 + 3 \times 2 + 3 \times 2 \times 1) = 60$种可能性

把ABCD看做四个城市,假如一个星球上有n个城市,我要旅游,至少得去一个城市,去的城市不能重复,那么可能的旅游路线数目有这么多

$$\mathop \sum \limits_{k = 2}^n \frac{{n!}}{{\left( {n - k} \right)!}} = {\text{e}}\Gamma \left( {n + 1,1} \right) - (1 + n)$$

地球上著名城市大约是2000个左右,代入n=1999(原谅我强迫症)得到一个5733位数,So,求出其中最短的路径有点困难,看看机票价格贪心算法也够了,这注定是个有生之年系列.

Read More

数字黑洞V:角谷猜想

Aster CODE➤GEASS, 理宅异闻录 Leave a Comment

上面说了那么多,我们终于进入了最终章,有请被誉为费马大定理继承者的角谷猜想出场!!!

对任意自然数,如果是奇数就乘3加1,如果是偶数就除以2.经过有限次操作后一定能收敛到4→2→1循环.

随便举几个例子,比如三的次幂3→10→5→16→8→4→2→1然后是9→28→14→7→22→11→34→17→52→26→13→40→20→10→5→16→8→4→2→1,然后你可以手算验证下27.

详细信息参考https://en.wikipedia.org/wiki/Collatz_conjecture,还有为啥要叫角谷猜想呐,找不到他的Paper啊?

Read More

质数算法

Aster CODE➤GEASS Leave a Comment

对于很多质数相关的算法,比如素数判定、因数分解、欧拉函数、莫比乌斯函数...一张质数表是必须的.

根据乘法原理,质数表的生成速度决定了以上算法的复杂度,因此一个高效的质数表算法很有必要.

最完整的质数表在质数搜索项目手里,这是没有API的,所以可以退而求次请求一个Wolfram Alpha的API.

在中国大陆的话,相信我,自己算前250万位的速度比请求的延时快得多.再往后自己算就二百五了.虐机达人ヾ(^▽^*)))

Read More

数字黑洞IV:回文黑洞

Aster CODE➤GEASS, 理宅异闻录 Leave a Comment

两边对称的数被称为回文数,比如11,比如121,个位数算不算有争议,我一般是计入个位数的.

有个猜想说任意数字,将其反转与原数字相加后一定能得到回文数,举个例子196,你们可以手算验证下这个猜想.

说到数字反转,还有个和数字重排有关的猜想,将一个数字从大到小排列,再减去其从小到大的排列,最后一定能得到6147.

Read More

数字黑洞III:数位黑洞

Aster CODE➤GEASS, 理宅异闻录 Leave a Comment

水仙花数就告一段落了,下面来讲一些其他在数位上做文章的数字黑洞.

也许有人知道145的特殊性质$145 = 1! + 4! + 5!$,这类数被称为Factorion,这类数是否有限呢.

A factorion is a natural number that equals the sum of the factorials of its decimal digits.

自阶乘数是指那些各位阶乘的和等于其本身的数,该定义同样依赖于进制.

同之前的粗略证明,p位数,${10^{p - 1}}\sim {10^p} - 1$,这样得到的自阶乘值最大为p×9!,p位数的最小值是${10^{p - 1}}$,在Mathematics中输入N[Reduce[p×9!> 10^(p - 1), p]]得到结果 p < 7.4308,说明不存在超过7位的十进制自阶乘数.

Read More