继续刷LeetCode,第172题,求阶乘后,结果后面出现几个0。
分析:
1、可以通过求出n的阶乘,然后对结果取10的余,如果余数为零,那么加一,如果不为零,就返回。
2、根据计算的规律,出现5的个数就是出现0的个数,那么只需要求出5以及5的倍数出现的次数就可以知道结果后面0的个数。
问题:
1、注意25这个数是两个5。
附上代码:
class Solution {
public:
int trailingZeroes(int n) {
int s=0;
int tmp=n/5;
while(tmp)
{
s=s+tmp;
tmp=tmp/5;
}
return s;
}
};