执行结果:
通过
显示详情
执行用时 :1 ms, 在所有 Java 提交中击败了99.85% 的用户
内存消耗 :36.9 MB, 在所有 Java 提交中击败了5.50%的用户
题目:
给定一个整数 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
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
思路:
计算因子5的个数。
代码:
class Solution {
public int trailingZeroes(int n) {
int count=0;
//计算因子中5的个数。2因子的数目太多了,所以计算5的就好
//每隔5个出现一个,每隔25(5*5)出现一个,每隔125(5*5*5)出现一个
//以此类推
while(n>0)
{
n/=5;
count+=n;
}
return count;
}
}