美文网首页剑指offer
172. 阶乘后的零

172. 阶乘后的零

作者: 人一己千 | 来源:发表于2020-04-16 15:36 被阅读0次

    题目

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

    示例 1:

    输入: 3
    输出: 0
    解释: 3! = 6, 尾数中没有零。
    

    示例 2:

    输入: 5
    输出: 1
    解释: 5! = 120, 尾数中有 1 个零.
    

    说明: 你算法的时间复杂度应为 O(log n) 。

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/factorial-trailing-zeroes
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

    解法

    0的来源是10的乘积----分析质因数中有多少10---分析质因数中有多少5(2太多了)---- 有好多5 ----5是5的倍数的全部加进来,再加5的平方...---- n//5+n//25+n//125...

    代码

    class Solution:
        def trailingZeroes(self, n: int) -> int:
            ans = 0
            while n >= 5:
                n //= 5
                ans += n
            return ans
    

    相关文章

      网友评论

        本文标题:172. 阶乘后的零

        本文链接:https://www.haomeiwen.com/subject/bqxhvhtx.html