zoukankan      html  css  js  c++  java
  • Java实现 LeetCode 172 阶乘后的零

    172. 阶乘后的零

    给定一个整数 n,返回 n! 结果尾数中零的数量。

    示例 1:

    输入: 3
    输出: 0
    解释: 3! = 6, 尾数中没有零。
    示例 2:

    输入: 5
    输出: 1
    解释: 5! = 120, 尾数中有 1 个零.
    说明: 你算法的时间复杂度应为 O(log n) 。

    PS:
    首先题目的意思是末尾有几个0
    比如6! = 【1* 2* 3* 4* 5* 6】
    其中只有25末尾才有0,所以就可以抛去其他数据 专门看2 5 以及其倍数 毕竟 4 * 25末尾也是0
    比如10! = 【2
    456810】
    其中 4能拆成22 10能拆成25
    所以10! = 【2*(22)5(23)(222)(2*5)】
    一个2和一个5配对 就产生一个0 所以10!末尾2个0

    转头一想 2肯定比5多 所以只数5的个数就行了

    class Solution {
        public int trailingZeroes(int n) {
            int count = 0;
            while(n >= 5) {
                count += n / 5;
                n /= 5;
            }
            return count;
        }
    }
    
  • 相关阅读:
    你所不知道的setTimeout
    SecureCRT8.1下载+注册机+破解教程
    jQuery学习
    GIt学习
    多进程
    Linux下的压缩(zip)解压(unzip)缩命令
    三次握手四次挥手
    django常见问题
    form和modelform
    文件上传
  • 原文地址:https://www.cnblogs.com/a1439775520/p/12946739.html
Copyright © 2011-2022 走看看