172. 阶乘后的零

Posted 潜行前行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了172. 阶乘后的零相关的知识,希望对你有一定的参考价值。

  1. 阶乘后的零
    给定一个整数 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

关键点

  • 重点计算 有多少个10 。 2 的因子肯定比 5 的因子多,计算 5 的因子数目即可。 25 有两个 5 因子,因此需要循环除 5 即可
class Solution 
    public int trailingZeroes(int n) 
        int res = 0;
        long divisor = 5;
        while(divisor <=n)
            res +=  n / divisor;
            divisor *= 5;
         
        return res;
    

以上是关于172. 阶乘后的零的主要内容,如果未能解决你的问题,请参考以下文章

172. 阶乘后的零

LeetCode.172- 阶乘后的零

LeetCode 172. 阶乘后的零(Factorial Trailing Zeroes)

172. 阶乘后的零

LeetCode172. 阶乘后的零

LeetCode 172. 阶乘后的零