惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
T
Tailwind CSS Blog
V
V2EX
阮一峰的网络日志
阮一峰的网络日志
H
Help Net Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
腾讯CDC
GbyAI
GbyAI
酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Last Week in AI
Last Week in AI
A
About on SuperTechFans
L
LangChain Blog
Engineering at Meta
Engineering at Meta
F
Fortinet All Blogs
G
Google Developers Blog
The Cloudflare Blog
云风的 BLOG
云风的 BLOG
D
Docker
博客园 - 聂微东
博客园 - 司徒正美
Recent Announcements
Recent Announcements
MyScale Blog
MyScale Blog
U
Unit 42

Shidenggui's blog

读《庞居士研究》有感 杂诗 2 杂诗 卢曼卡片盒的本质 致《斯通纳》 古典风格 跳舞吧 无解的问题,有解的人生 杠精是如何炼成的 存在即被承认 混沌宇宙中涌现的秩序 人生革命 少见的艺术家 爱欲之死 世界围绕着心灵旋转 轻信 日常之外的可能性 第二大脑 新品发布:元思笔记 - 打造自生长的知识网络 推书君 APP 上线了!书荒找书,点评分享,尽在其中 如何通过定价充分挖掘隐藏利润? 高不确定性意味着高风险?认知的局限性才是 聪明的学习胜过大量时间的投入 经济机器是如何运行的? 瑜伽不能减肥?我一个月瘦了12斤 从租售比看,北上深的房价为什么不贵? 记一次业务中的算法应用:动态规划、图、树 Jetbrains 福利,半年全家桶或者一年半单产品(PyCharm, WebStorm等)订阅,非激活码,发放到 account BlogHub 上线了,开源独立博客聚合站,一起来发现更多有趣的灵魂 现在还有必要拥有独立博客吗?谈谈我的独立博客史
编程与数学(五):Trailing zeroes in factorial
2019-01-13 · via Shidenggui's blog

1/13/2019

缘起

最近在看《编程之美》,里面有一小节是探讨 N! 的阶乘的尾部零的数量的问题。里面提出来一个规律即对于 N! 的二进制表示,则尾部的零的数量为 N - one_bits(N),即 N 减去 N 的二进制表示里 1 的数量,只需要 O(1) 的时间即可求解该问题。然后书里面举了一个例子,但是没有给出证明为什么这个规律成立。这么优雅的规律怎么能没有证明呢,它真的成立吗?

Why?

​ 首先书里面指出 binary(N!) 尾部零的数量 = N / 2 + N / 4 + N / 8 .... 直到 N / (2^k) 为 0 为止,这个很容易理解,接下来比较关键的就是证明 N / 2 + N / 4 + N / 8 .... 直到 N / (2^k) 为 0 为什么等于 N - one_bits(N)。(这里的 / 是 C 里面的 / )

下面给出证明,如有错误欢迎指出:

结尾

优雅的结论背后一定隐藏着优雅的证明,我想这就是数学猜想的魅力所在吧!