LeetCode(31)-Factorial Trailing Zeroes
来源:互联网 发布:ipython在linux安装 编辑:程序博客网 时间:2024/05/18 02:59
题目:
Given an integer n, return the number of trailing zeroes in n!.Note: Your solution should be in logarithmic time complexity.
思路:
- 题意是要求一个数字的阶乘,末尾有多少个0
- 要求是对数级别的时间,所以考虑用递归
- 分析一下,产生一个10,后面加0,找到所有的2*5,或者2的次方×5的次方,任何情况下因子2的个数永远大于5
- 所以只需要计算因子5的个数,(25*4 = 100),算2个5 -
代码:
class Solution { /* * param n: As desciption * return: An integer, denote the number of trailing zeros in n! */ public long trailingZeros(long n) { // write your code here return n / 5 == 0 ? 0 : n /5 + trailingZeros(n / 5); }};
暴力方法:(不推荐)
public class Solution { public int trailingZeroes(int n) { int count = 0; if(get(n) == 0){ return 1; } int sum = get(n); while(sum > 0){ if(sum % 10 == 0){ count++; } sum = sum /10; } return sum; } public int get(int n){ int all = 0; if(n == 0){ return 0; } for(int i = 1;i <= n;i++){ all = all*i; } return all; }}
0 0
- LeetCode(31)-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
- iOS 证书的事
- 什么是面向对象编程OOP?
- 图像边缘检测概论
- 实现gif图的圆角效果,
- [Keras]学习笔记(1):optimizers
- LeetCode(31)-Factorial Trailing Zeroes
- 无序整数数组中找第k大的数
- 一步一步实现iOS微信自动抢红包(非越狱)
- Kafka的通讯协议
- android优化
- Crontab定时脚本语句无效,直接执行脚本就可以
- OC内存管理
- android ListView的优化
- 字符串匹配:KMP算法的实现以及理解