美文网首页
2022-03-25 「172. 阶乘后的零」

2022-03-25 「172. 阶乘后的零」

作者: 柠香萌萌鸡 | 来源:发表于2022-03-25 08:56 被阅读0次

    今日中等题:https://leetcode-cn.com/problems/factorial-trailing-zeroes/

    近期为了备考5月底的高项,每天听课刷题,就断更了一阵子leetcode。今天想想好久没做题了,少了好多快乐,还是来做一题放松一下。

    今天的题目说是中等题,其实比较简单,说要算尾随的0,那就是说,只要没有和最后一个0相连,中间的0其实可以不用管。
    所以这又是一道数学题,没有思路的时候,不妨把前几位数列出来找找规律:

    0:0
    1:1
    2:2
    3:6
    4:24
    5:120
    6:720
    7:5040
    8:40320
    9:362880
    10:3628800

    可以很明显地看出规律了,只有遇到5或者10时,尾数0才会+1,那么我们只要统计n个累乘的数中有多少个5即可(10也是2*5)。

    这里有个小的陷阱,注意是「n个累乘的数中」,而不是「n中」,所以不要简单地认为n/5就够啦。

    另外,做完题目之后,可以多在题目下方的测试用例里补充一些边界或者异常数据,验证下代码的正确性和健壮性。

    class Solution {
        public int trailingZeroes(int n) {
            int ret = 0;
            while(n!=0) {
                n /=5;
                ret +=n;
            }
            return ret;
            
        }
    }
    

    相关文章

      网友评论

          本文标题:2022-03-25 「172. 阶乘后的零」

          本文链接:https://www.haomeiwen.com/subject/yyurjrtx.html