技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 算法 --> 数学冷知识:不断取英文表达的字符数,最后总会得到数字4

数学冷知识:不断取英文表达的字符数,最后总会得到数字4

浏览:2574次  出处信息

     这道题的答案有几个字母?答案:four。

     有趣的是,这是唯一的答案。如果令函数 f(n) 表示正整数 n 的英文表达中有多少个字母, n=4 是该函数的唯一不动点。

    n    0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, …

           f(n)  4, 3, 3, 5, 4, 4, 3, 5, 5, 4, 3, …

     事实上, @IanMathmogician 发现了一个更有趣的“数学冷知识”:任取一个 1 到 100 之间的正整数 n ,算出这个数的英文表达中的字符个数,再算出所得结果的英文表达的字符数,并这样一直迭代下去,最后总会得到数字 4 。我用 Mathematica 做了一张图片,可以让大家直观地看到,这真的可以说是条条大路通向数字 4 啊。

           

     那么,对于更大的数,如此迭代下去也都会变成 4 吗?恐怕没有人会置疑这一点吧。事实上,由于数字的英文描述所需字符数是对数级别增长的,因此从理论上说,对于更大的数,英文表达所用的字符数都应该比这个数字本身更小。于是,反复取字符数,所得结果必会越来越小;到了充分小的时候,就会根据上图的指示掉进数字黑洞 4 里。

     我另外画了一个从 1 到 1000 的所有数的转移示意图,非常壮观,贴在下面供大家观赏。

    

建议继续学习:

  1. 为什么Fibonacci数列相邻两项之比会趋于0.618?    (阅读:4348)
  2. 千万不要迷信规律:大反例合集    (阅读:3757)
  3. Fibonacci数列性质的组合证明    (阅读:3092)
  4. 用CSS代码写出的各种形状图形的方法    (阅读:2762)
  5. 蛋疼研究之怎样刷屏最快?    (阅读:2331)
  6. Hofstadter的非线性递推数列    (阅读:1936)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1