2. 尾部的零
设计一个算法,计算出n阶乘中尾部零的个数
样例
11! = 39916800,因此应该返回 2
class Solution { public: /* * @param n: A long integer * @return: An integer, denote the number of trailing zeros in n! */ long long trailingZeros(long long n) { /* * 思路很巧妙的一道题:阶乘后面出现0只有2*5或者是10才会出现 * 2出现的次数肯定大于5出现的次数 * 所以我们只要找到5的倍数出现的次数就好了 * 打比方我们传进来的的数是26 只有25 20 15 10 5 满足条件 * */ long long count = 0; while (n > 0) { count += (n / 5); n /= 5; } return count; } };