[LeetCode javaScript] 172. 阶乘后的零

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

示例 1:

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

输入: 5
输出: 1
解释: 5! = 120, 尾数中有 1 个零.
说明: 你算法的时间复杂度应为 O(log n) 。

思路:
遇到5时会产生一个0,
遇到5^2时会产生两个0
遇到5^n会产生n个0
以30为
30=5*6
会遇到6个能产生0的数字
5,10,15,20,25,30
其中25能产生两个0
故为7个

/**
 * @param {number} n
 * @return {number}
 */
var trailingZeroes = function(n) {
    var count=0;
    while(n){
        n=parseInt(n/5);
        count+=n;
    }
    return count;
};

猜你喜欢

转载自blog.csdn.net/qq_40547126/article/details/82787618
今日推荐