[leetcode]Factorial Trailing Zeroes
来源:互联网 发布:王者荣耀手办淘宝 编辑:程序博客网 时间:2024/06/01 09:09
题目描述如下:
Given an integer n, return the number of trailing zeroes in n!.
Note: Your solution should be in logarithmic time complexity
就是就N阶乘的末尾有几个0。第一遍的代码没有看题目Note的部分直接写了一个巨丑陋的代码结果TLE了…这里就不放那个代码了,实在是有些见不得…
其实思路大家都会想到的,就是求阶乘的书中最后能分解出几个2和几个5,又因为在指数型关系下5的个数的增长速度会明显更慢,因此就是求5的个数。
在1-N这N个数中,如果该数仅为5的倍数则贡献1,若为25的倍数则贡献2。而1-N中,5的倍数个数为|N/5|(|_ |表示取下整数)。又因为在1-N中,25的倍数个数为|_N/25|.需要注意到的是|N/5|已经包含了|N/25|,考虑到避免重复计算,则N!的素数分解中5的指数j为:j = |N/5|+|N/25|+|N/5^3|+…。因此,用一个循环便可以解决,代码如下:
public class Solution { public int trailingZeroes(int n) { if(n < 5) return 0; // 包含了n小于0的情况 int ZeroNum = 0, tmp; tmp = n; while(tmp != 0){ ZeroNum += tmp / 5; tmp /= 5; } return ZeroNum; }}
题目链接:https://leetcode.com/problems/factorial-trailing-zeroes/
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
- windows server 2012配置MySQL 和 tomcat
- CCBPM对业务型SaaS客服领域的支持
- 集合框架
- 矩阵运算的GPU加速!!求教各位大神帮忙!在此谢过
- 【整理】FFMPEG相关开源项目
- [leetcode]Factorial Trailing Zeroes
- 设置Bitmap平铺效果
- 【Leet Code】64. Minimum Path Sum---Medium
- coco2d-js 无法加载网络图片(Failed to execute 'texImage2D' on ‘WebGLRenderin
- linux socket 缓冲区默认大小
- Caused by: java.lang.UnsatisfiedLinkError: Couldn't load p7zip from loader dalvik.system.PathClassL
- tapestry 016
- iOS 取相册照片/打开相机
- 如何动态设置EditText输入的文字为密码形式