Android 有389 112 种密码
Android 的密码是 3 × 3 点阵中的一条路径,这条路径可以交叉,可以“走日字”,几乎是无所不能(只要不经过重复点),但却有一个例外:路径不允许跳过途中必须要经过的点。例如, 如果从左上角的点连接到右上角的点,中间的那个点会被自动地加进路径里。但麻烦就麻烦在,这个规则本身也有一个值得注意的地方:如果中间的点是之前已经用过的,那么这个点就可以被跳过去了。
我们不妨把点阵中的九个点分别用数字 1 到 9 编号。按照上述规则,4136、4192 都是不合法的,但 24136、654192 则都是可行的。死理性派这下苦恼了,似乎五花八门的组合数学模型在这里都派不上用场。怎么办呢?别急,我们还有强大的计算机帮忙。下面,有请编辑最爱的数学软件 Mathematica 登场。
首先,让我们生成所有 985 824 种没有限制的排列组合:
再记下不能直接连接的点对:
由此生成不合法的排列规则:
从全部排列组合中删掉不合法的,便得到了所有可能的 Android 密码了:
Android 密码一共有多少种可能性呢?让我们来看看:
这样,我们就得到了一个准确的数字:在 Android 系统上一共有 389 112 种可能的密码,只占之前估计的密码数上限的 1/3 左右。