Leetcode Factorial Trailing Zeroes

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

Note: Your solution should be in logarithmic time complexity.

最后的解法就是对n/5+n/25+n/125+…+进行求和,当n小于分母的时候,停止。分母依次为5^1, 5^2, 5^2… 这样的话在计算5^2的时候,,能被25整除的数里面的两个5,其中一个已经在5^1中计算过了。所以5^2直接加到count上。

public class Solution {(int n) {if ( n<0 ) return -1;int count = 0;for (long i=5; n/i>=1; i*=5) {count += n / i;}return count;}}

多看书,看好书。

Leetcode Factorial Trailing Zeroes

相关文章:

你感兴趣的文章:

标签云: