首页 > 代码库 > 阶乘尾零

阶乘尾零

题目描述

请设计一个算法,计算n的阶乘有多少个尾随零。

给定一个int n,请返回n的阶乘的尾零个数。保证n为正整数。

测试样例:
5
返回:1
class Factor {
public:
    int getFactorSuffixZero(int n) {
        // write code here
        int tmp = n;
        int count2 = 0;
        int count5 = 0;
        
        while(tmp){
            count2 += tmp/2;
            tmp /= 2;
        }
        
        tmp = n;
        while(tmp){
            count5 += tmp/5;
            tmp /= 5;
        }
        
        return count2>count5?count5:count2;
    }
};

 

阶乘尾零