首页 > 代码库 > 172. Factorial Trailing Zeroes
172. Factorial Trailing Zeroes
1. 问题描述
Given an integer n, return the number of trailing zeroes in n!.
Note: Your solution should be in logarithmic time complexity.
Tags: Math
Similar Problems: (H) Number of Digit One
2. 解题思路
分解质因子, 当且仅当 因子中出现 一对 (2,5)时, 最后结果会增加一个 trailing zero.
1. 2的个数永远多于5个个数.
2. 计算5的个数时, 最简单的方法是 SUM(N/5^1, N/5^2, N/5^3...)
3. 代码
class Solution {public: int trailingZeroes(int n) { if(n < 1) { return 0; } int nCount = 0; while (0 != n/5) { n = n/5; nCount = nCount + n; } return nCount; }};
4. 反思
参考:http://www.cnblogs.com/ganganloveu/p/4193373.html
172. Factorial Trailing Zeroes
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。