给定一个整数 n,返回 n! 结果尾数中零的数量(说明: 你算法的时间复杂度应为 O(log n) 。)
示例 1:
输入: 3
输出: 0
解释: 3! = 6, 尾数中没有零。
观察发现规律:题目让我们找末尾0的数量,只有当有10的出现才会有0,比如2*5=10,4*5=20,5*8=40等等,所以这道题是在让我们求n里边有多少个5(关键点:0和5的联系)
代码:
class Solution {
public int trailingZeroes(int n) {
int zeros=0;
while(n>0){
zeros+=n/5;
n/=5;
}
return zeros;
}
}