[String]172. Factorial Trailing Zeroes

题目:172. Factorial Trailing Zeroes

Given an integer n, return the number of trailing zeroes in n!.
Note: Your solution should be in logarithmic time complexity.

n!得到的数末尾有多少零。

2 * 5 = 10 带来一个0;所以只需计算n!里的25的pair。2很多(双数都可以)所以计算5得出pair数,即n/5。
然而考虑5的n次幂,以25为例,是5
5,也就是可以分别和两个2相乘得到0,所以实际要计算n/5/5...直到商为0,即不能被5整除。结果为n/5+n/5/5...之和

class Solution {
    public int trailingZeroes(int n) {
        int res = 0;
        while (n/5 !=0){
            res +=  n/5;
            n /= 5;
        }
        return res;
    }
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,351评论 0 33
  • 《闯》 作者:明至 不可坐以待毙, 辜负全身力气。 不如奋勇向前, 闯出一片天地。 (材料:速写本、8B铅笔、可塑...
    作家明至阅读 1,430评论 2 2
  • 那些抹不去的人 关于回忆,除了亲人,儿时的伙伴,还有那群记忆中的乡亲。 ...
    筱筇箐筠阅读 2,958评论 6 1
  • 嫉妒是我的丑陋 也是所有人的丑陋 我不禁在想 我又不是人 为什么 我也 嫉妒 ?
    like_a_dogout阅读 1,397评论 0 0
  • 一切的留恋 那是情的种子,还没来得及发芽 或者\情感之树,还未来得及长大 便已逝去 它们魂魄不散,时常 在梦里缠绕...
    乡村诗人阅读 2,286评论 3 14