数学冷知识:不断取英文表达的字符数,最后总会得到数字4
来源:互联网 发布:h5 掷骰子 源码 下载 编辑:程序博客网 时间:2024/05/01 10:41
这道题的答案有几个字母?答案: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 的所有数的转移示意图,非常壮观,贴在下面供大家观赏。
0 0
- 数学冷知识:不断取英文表达的字符数,最后总会得到数字4
- 数学符号的英文表达
- 数学运算符号的英文表达
- 数学及其英文表达
- 数字的英文表达(趣味题C#)
- 其他题目---数字的英文表达和中文表达
- 数学之美------“文字与数学”的冷知识
- 解析GRE数学中重要符号的英文表达
- 在C#中取汉字的拼音码,支付数字、英文字符、一级汉字、二级汉字
- python:将数字转换成用英文表达的程序
- 得到数组的最后一个数
- 像傻逼一样坚持,总会得到牛逼的结果
- 标点符号的英文表达
- input最多输入的字符数(中文,英文,数字都OK)
- 英文数字转换数学数字
- SQL取最后字符
- 基本概念的数学表达
- 在C#中取汉字的拼音码,支付数字、英文字符、一级汉字、二级汉字(转贴)
- gxx_slide之Point Distance
- 数字三角形
- 【LeeCode160】 Intersection of Two Linked Lists
- leetcode 6ZigZag Conversion
- HDOJ 1078 FatMouse and Cheese
- 数学冷知识:不断取英文表达的字符数,最后总会得到数字4
- HDU 4406 GPA(费用流)
- Hdu 3068 最长回文(manacher算法)
- Protocol Buffer的使用(python)
- http://blog.csdn.net/liuhe688/article/details/6733407
- 指针与字符串
- 跨平台应用:Qt 对决 HTML5
- 关于IO的同步,异步,阻塞,非阻塞
- Android 左右滑动菜单 DrawerLayout简单实现