Factorial Trailing Zeros
来源:互联网 发布:java 不同包调用数组 编辑:程序博客网 时间:2024/04/29 10:38
leetcode question
Given an integer n, return the number of trailing zeroes in n!.Your solution should be in logarithmic time complexity.
need to pay attention basic situation is N <= 0, no zero! cause 0! = 1;
Solution: 点击打开链接 idea from geeksforgeeks
A zero is produced by prime factor 2 * 5, so we can just count number of 2s and 5s. I
We always have enough 2s , which means 2s more than 5s. So we can just count the number of 5s.
To count number of 5s in prime factors of n! in ( logN ) time
Trailing 0s in n! = Count of 5s in prime factors of n!
= floor(n/5) + floor(n/25) + floor(n/125) + ....
eg 28! 28/ 5 = 5 already count all 5 (5, 10 ,15, 20 ,25)
28 / 25 = 1 count extra 5( in 5 * 5)
28 /125 = 0 count extra 5 (in 25 * 5)
pay attention to overflow
<span style="white-space:pre"></span>public int trailingZeroes(int n) { int count = 0; if(n <= 0){ return 0; } // Keep dividing n by powers of 5 and update count long i; for (i = 5; n/i >= 1; i *= 5){ count += n/i; } return count; <span style="white-space:pre"></span>}
- Factorial Trailing Zeros
- #Factorial Trailing Zeros#
- Trailing Zeros
- [刷题]Trailing Zeros
- lintcode:Trailing Zeros
- Math---Trailing Zeros
- *[Lintcode]Trailing Zeros
- lintcode_2 Trailing Zeros
- #2 Trailing Zeros
- Factorial Trailing Zeroes
- Factorial Trailing Zeroes
- Factorial Trailing Zeroes
- Factorial Trailing Zeroes
- [leetcode]Factorial Trailing Zeroes
- [LeetCode] Factorial Trailing Zeroes
- Leetcode Factorial Trailing Zeroes
- Leetcode: Factorial Trailing Zeroes
- 【Leetcode】Factorial Trailing Zeroes
- 标记(tag)的概念
- 怎样用CSS的float和clear创建三栏液态布局的方
- 可以加速HTML页面的10个处理技巧
- CSS实例之水平线变成虚线
- CString与int连接及相互转化
- Factorial Trailing Zeros
- Java 课堂随笔(2)
- 西门子PLC学习笔记十四-(用户程序结构及执行)
- C专题指针4
- 装饰模式
- 前后台获取当前时间毫秒数
- LeetCode OJ 之 Jump Game II(“跳跃”游戏 - 二)
- 简单介绍Java集合类
- X5用组件windowRunner打开后 再点数据打开页面获取值不会刷新 的解决办法