LeetCode 172. 阶乘后的零

原创 2018年04月15日 01:20:14

题目描述: 阶乘后的零

        给定一个整数 n,返回 n! 结果尾数中零的数量。

        注意: 你的解决方案应为对数时间复杂度。

解题思路:

        列出所有5的倍数发现了规律,所有5的倍数会添加一个0,所有5^2的倍数会比5的倍数多添加一个0,.......,所以得出了代码。

代码:

class Solution {
public:
    int trailingZeroes(int n) {
   //     n = 10;
        int ans = 0;
        while(n) {
            n /= 5;
            ans += n;
        }
        return ans;
    }
};

一开始的暴力t了:

class Solution {
public:
    int trailingZeroes(int n) {
        int ans = 0;
        for(int i = 1 ; i <= n ; i ++) {
            int n =0;
            int m =i;
            while( m%5 == 0) {
                m /= 5;
                n++;
            }
            ans += n;
        }
        return ans;
    }
};

一步步Nokia Series60开发入门教程2.0

来自www.Move2008.com请下载PDF文档:http://www.move2008.com/down/download/Series60_Dev_Start2.0.zip...
  • bedlang
  • bedlang
  • 2002-11-14 09:18:00
  • 1163

【LeetCode-面试算法经典-Java实现】【172-Factorial Trailing Zeroes(阶乘尾后0的数目)】

【172-Factorial Trailing Zeroes(阶乘尾后0的数目)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】代码下载【https://github.com/W...
  • DERRANTCM
  • DERRANTCM
  • 2015-08-23 06:43:47
  • 2728

LeetCode:求阶乘后面的0的个数(Factorial Trailing Zeroes)

题目:原地址 Given an integer n, return the number of trailing zeroes in n!. Note: Your solution should be...
  • ztf312
  • ztf312
  • 2016-04-03 15:54:48
  • 455

[LeetCode]计算N的阶乘末尾0的个数

这是LeetCode上的p172,计算N!末尾0的个数: 1) 10 = 5 x 2 2) count_5 综上,很简单能够想到一个naive的算法: for i = 1 -> n count_5 ...
  • pjt73651
  • pjt73651
  • 2015-09-11 19:25:53
  • 442

<LeetCode> 题2:n阶乘尾部零的个数

题目描述:设计一个算法,计算出n阶乘中尾部零的个数。注意:时间复杂度为O(lgn)。思路:要求n的阶乘,就是求1到n这n个数相乘。在这1到n个数当中,只有2和5相乘的结果才会出现0,其中10的倍数也可...
  • u013003827
  • u013003827
  • 2016-07-11 14:45:22
  • 1223

LeetCode N阶乘的尾数为0的个数

原题如下 Given an integer n, return the number of trailing zeroes in n!. Note: Your solution sho...
  • dddongdong
  • dddongdong
  • 2015-01-27 10:19:25
  • 961

求关于n的阶乘结果后面有几个零?如2016的阶乘(网易的笔试选择题)

文章的原地址:http://blog.csdn.net/zyh2525246/article/details/53697136 一、阶乘数小的时候可以直接计算。 例如:求10!后面零的个数...
  • qikaihuting
  • qikaihuting
  • 2017-03-25 16:50:54
  • 4821

python实现阶乘

python实现阶乘 def  f1(n):     value=1     for  i  in  range(1,n+1):         value=value*i     ret...
  • weixin_39267010
  • weixin_39267010
  • 2017-06-23 08:43:32
  • 258

python 阶乘 + 计算阶乘末尾有几个零

用简单的python代码实现阶乘
  • qq_34352010
  • qq_34352010
  • 2016-03-19 18:16:45
  • 314

计算n阶乘中尾部零的个数

写在前面本来觉得问题挺容易的,不打算记录,谁知道一不小心,还真没做出来。最终凭借“朴实”的算法思想解决了问题,但是其中的曲折还真是汗颜。科学的思维指导确实必不可少,“野路子”的朴素的战斗理论不论是效率...
  • surp2011
  • surp2011
  • 2016-04-16 15:17:08
  • 7389
收藏助手
不良信息举报
您举报文章:LeetCode 172. 阶乘后的零
举报原因:
原因补充:

(最多只允许输入30个字)