Leetcode: Factorial Trailing Zeroes
来源:互联网 发布:java开发者 编辑:程序博客网 时间:2024/05/11 01:46
第一天开始刷题,努力脱离小白路线,希望可以坚持!这道题目开始都没有看懂题意,然后努力找翻译,结果就直接看到别人答案了,囧~
题目意思是:求n!的末尾的0的个数;
解法参考:http://www.tuicool.com/articles/RZZnQf
大致思路是:
- 末尾的0是由1*2*3*...*n式子中的"2*5"产生,因此需要判断n!中包含多少个2,5因子;
- 对n!进行因式分解,判断2的个数和5的个数,其中,2的个数肯定大于5的个数,因此只需要看5的个数,就知道会产生多少个0;
- 那么如何看n!中因子5的个数呢,首先让我们想下n/5的意思,意思是n前面有多少个包含5的因子,即去除掉包含5的因子;然而,由于某些数字,例如25,125等,包含多个5因子,所以还需要进一步剔除,所以对此依次剔除,这里需要注意的是,虽然n/25其实意味着包含2个5因子,但是由于之前已经计算过n/5,所以只能被算成1次。(不知道解释清楚没有,写博客也算是锻炼这种解说能力吧)
- public class Solution {
- public int trailingZeroes(int n) {
- int x=5;
- int count=0;
- while(n>=x){
- count+=n/x;
- x*=5;
- }
- return count;
- }
- }
- public class Solution {
- public int trailingZeroes(int n) {
- int count=0;
- while(n>4){
- count+=n/5;
- n/=5;
- }
- return count;
- }
- }
0 0
- [leetcode]Factorial Trailing Zeroes
- [LeetCode] Factorial Trailing Zeroes
- Leetcode Factorial Trailing Zeroes
- Leetcode: Factorial Trailing Zeroes
- 【Leetcode】Factorial Trailing Zeroes
- leetcode:Factorial Trailing Zeroes
- Leetcode: Factorial Trailing Zeroes
- Leetcode: Factorial Trailing Zeroes
- [leetcode] Factorial Trailing Zeroes
- [LeetCode]Factorial Trailing Zeroes
- [LeetCode] Factorial Trailing Zeroes
- *Leetcode-Factorial Trailing Zeroes
- LeetCode: Factorial Trailing Zeroes
- leetcode Factorial Trailing Zeroes
- leetcode Factorial Trailing Zeroes
- Leetcode: Factorial Trailing Zeroes
- [Leetcode]Factorial Trailing Zeroes
- leetcode: Factorial Trailing Zeroes
- 基于jQuery的AJAX和JSON的实例
- Climbing Stairs
- Struts2(XWork)中的Container 一
- log4j学习
- 关于ie的兼容性trim
- Leetcode: Factorial Trailing Zeroes
- 根据文件路径检测文件大小并检测是否正在被占用
- vector中erase用法注意事项
- android 颜色值
- 读取FAT16文件
- XCode 6 新建项目 无法全屏
- Instrument 之 time Profiler
- python IPy库
- Spring InitializingBean的afterPropertiesSet方法