Leet Code OJ 172. Factorial Trailing Zeroes [Difficulty: Easy]

来源:互联网 发布:支持mac的网游加速器 编辑:程序博客网 时间:2024/05/22 15:44

题目:
Given an integer n, return the number of trailing zeroes in n!.

Note: Your solution should be in logarithmic time complexity.

翻译:
给定一个整数n,返回n!末尾的0的个数。
提示:你的解决方案应该运行在O(log(n))的时间复杂度。

分析:
我们知道要形成一个末尾的0,需要组合出2和5这两个质因子。然而在n!中,质因子2的个数永远大于5的个数。所以,问题转换为对n!计算5的质因子个数。

代码:

public class Solution {    public int trailingZeroes(int n) {        int s=0;        while(n>=5){            n/=5;            s+=n;        }        return s;       }}
1 0
原创粉丝点击