- 🧛♂️个人主页:杯咖啡
- 💡进步是今天的活动,明天的保证!
- ✨目前正在学习:SSM框架,算法刷题
- 👉本文收录专栏 : 算法刷题
- 🙌牛客网,刷算法过面试的神级网站,用牛客你也牛。 👉免费注册和我一起学习刷题👈
- 🐳希望大家多多支持🥰一起进步呀!
- 😎It’s so easy to be callous,it takes courage and courage to care.
对一切漠不关心太容易了,但有所在乎却要无尽的勇气。-《超脱》
✨今日算法一题
阶乘后的零
题目描述
思路详解
刚拿到本题呢,还是比较懵的。本题需要求出结果的尾随的0的个数。
那么我们思考这些个0的来源是哪里,我们把 n!倒过来思考 n! = 1 * 2 *…n
那么0是怎么得出的呢,我们考虑首先 2 * 5 = 1 0,4 * 15 = 60…,还有其他的10,20,等等。
我们仔细考虑这些有什么共同的特点,这两种情况,他们都是有一个数是 5 的倍数,那么我们只需要寻找有多少5的倍数就可以了。
代码与结果
class Solution {
public int trailingZeroes(int n) {
int ans = 0;
for (int i = 5; i <= n; i += 5) {
for (int x = i; x % 5 == 0; x /= 5) {
++ans;
}
}
return ans;
}
}
✨总结
今天的题主要考察了数学思维的转化,有大佬的评论区也可以用公式证明一下哦!!小编这里偷偷懒,就不证明啦!!! 加油!!!
原创不易,还希望各位大佬支持一下 \textcolor{blue}{原创不易,还希望各位大佬支持一下} 原创不易,还希望各位大佬支持一下
点赞,你的认可是我创作的动力! \textcolor{green}{点赞,你的认可是我创作的动力!} 点赞,你的认可是我创作的动力!
收藏,你的青睐是我努力的方向! \textcolor{green}{收藏,你的青睐是我努力的方向!} 收藏,你的青睐是我努力的方向!
评论,你的意见是我进步的财富! \textcolor{green}{评论,你的意见是我进步的财富!} 评论,你的意见是我进步的财富!