172 Factorial Trailing Zeroes
2016-01-31 15:35
417 查看
题目链接:https://leetcode.com/problems/factorial-trailing-zeroes/
题目:
解题思路:
这题的考点依然是数学问题。
解决办法依然是找规律。
对本题来说,只有包含 5 的倍数和 2 的倍数的数字可以产生 0.
由于 2 的倍数的数字远多于 5 的倍数,所以本质就是在 1 ~ n 的范围内找 5 的倍数,以及这些倍数本身具体包含几个 5 相乘。最终统计出一共有多少个 5,即可产生多少个 尾数0.
代码实现:
题目:
Given an integer n, return the number of trailing zeroes in n!. Note: Your solution should be in logarithmic time complexity.
解题思路:
这题的考点依然是数学问题。
解决办法依然是找规律。
对本题来说,只有包含 5 的倍数和 2 的倍数的数字可以产生 0.
由于 2 的倍数的数字远多于 5 的倍数,所以本质就是在 1 ~ n 的范围内找 5 的倍数,以及这些倍数本身具体包含几个 5 相乘。最终统计出一共有多少个 5,即可产生多少个 尾数0.
代码实现:
public class Solution { public int trailingZeroes(int n) { if(n < 0) return -1; int count = 0; for(long i = 5; n / i >= 1; i *= 5) { count += n / i; } return count; } }
502 / 502 test cases passed. Status: Accepted Runtime: 2 ms
相关文章推荐
- The vertically scrolling ScrollView should not contain another vertically scrolling widget (ListView
- View and Data API Tips: Constrain Viewer Within a div Container
- hdu 5178 pairs
- 识别真假搜索引擎(搜索蜘蛛)方法(baidu,google,Msn,sogou,soso等)
- Thread Signaling
- UltraISO
- CookieContainer加不了cookie加不了Cookie解决办法
- offsetof与container_of宏[总结]
- Kamailio安装配置指南(绝对原创,亲测有效)
- JetBrains注册码计算(IntelliJ IDEA 15.0注册码激活)
- 开发环境解决 kafka Failed to send messages after 3 tries
- lintcode:Trailing Zeros
- 加拿大信息竞赛 2015 junior problem 4 WAIT TIME
- 部署OpenStack问题汇总(三)--Failed to add image
- 1014. Waiting in Line (30)
- 解密Google Deepmind AlphaGo围棋算法:真人工智能来自于哪里?
- 【观点】语言交流将是人工智能拟人化的核心
- 人工智能-搜索算法
- failed to push some refs to git
- Error 42 error C2784: 'bool std::operator <(const std::_Tree<_Traits>