给定一个整数n
,返回n!
(n的阶乘)的尾随零的个数。
注意事项
您的解法时间复杂度应为对数级别。
解题思路:
1.需要注意的是后缀0是由2,5相乘得来,因此只需看有多少个2,5即可
2质因子中2的个数总是大于等于5的个数。因此只要计数5的个数就可以了。
3.需要注意的是25中有25,20,15,10,5,但是25又可以分为5*5,
因此需要判断t=n/5后中t的5个数
public class Solution {
/**
* @param n: a integer
* @return: return a integer
*/
public int trailingZeroes(int n) {
// write your code here
int count = 0;
while(n != 0){
count += n/5;
n = n/5;
}
return count;
}
}