列表

详情


172. 阶乘后的零

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

提示 n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1

 

示例 1:

输入:n = 3
输出:0
解释:3! = 6 ,不含尾随 0

示例 2:

输入:n = 5
输出:1
解释:5! = 120 ,有一个尾随 0

示例 3:

输入:n = 0
输出:0

 

提示:

 

进阶:你可以设计并实现对数时间复杂度的算法来解决此问题吗?

相似题目

数字 1 的个数

阶乘函数后 K 个零

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: int trailingZeroes(int n) { } };

golang 解法, 执行用时: 0 ms, 内存消耗: 2 MB, 提交时间: 2020-11-11 11:53:07

func trailingZeroes(n int) int {
    res := 0
    for n >= 5 {
        res += n / 5
        n = n / 5
    }
    return res
}

python3 解法, 执行用时: 44 ms, 内存消耗: 13.2 MB, 提交时间: 2020-11-11 11:50:24

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

上一题