LeetCode Factorial Trailing Zeroes

时间:2014-12-30 22:00:07   收藏:0   阅读:211

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

Note: Your solution should be in logarithmic time complexity.

Credits:
Special thanks to @ts for adding this problem and creating all test cases.

 

 1 public class Solution {
 2     public int trailingZeroes(int n) {
 3         if (n <= 1) {
 4             return 0;
 5         }
 6         long c2=0;
 7         long c5=0;
 8         for (int i = n; i > 1; i--) {
 9             int k=i;
10             while (k % 5 == 0) {
11                 c5++;
12                 k = k / 5;
13             }
14             while (k % 2 == 0) {
15                 c2++;
16                 k = k / 2;
17             }
18         }
19         return (int) Math.min(c2, c5);
20     }
21 }

 

原文:http://www.cnblogs.com/birdhack/p/4194514.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!