题目描述
请设计一个算法,计算n的阶乘有多少个尾随零。
给定一个int n,请返回n的阶乘的尾零个数。保证n为正整数。
测试样例:
5
返回:1

class Factor {
public:
    int getFactorSuffixZero(int n) {
        // write code here
        if(n <= 0)
            return 0;
         int base=5,count=0;
        while(base<=n)
        {
            int temp =base;
            while(temp%5 == 0){
                temp /=5;
                    ++count;
            }
            base+=5;
        }
        return count;
    }
};
简单统计有多少个5就可以了
class Factor {
public:
    int getFactorSuffixZero(int n)
    {
        int res = 0;
        for(int i= 5;i <= n;i+= 5)
        {
            int num = i;
            while(num % 5 == 0)
            {
                num /= 5;
                ++res;
            }
        }

        return res;
    }
};