美文网首页
阶乘后的零

阶乘后的零

作者: 你今天作业做了吗 | 来源:发表于2019-04-21 11:16 被阅读0次

阶乘后的零

Leetcode 172. 阶乘后的零

题意

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

示例一

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

示例二

输入: 5
输出: 1
解释: 5! = 120, 尾数中有 1 个零.

说明

你算法的时间复杂度应为O(log n)。

分析:

  1. 通过对阶乘组成的数进行质数分解,可得阶乘出现尾数为零的结果,只能由5*2所构成,而2的个数远多于5的个数,因此只需计算质数分解后5出现的个数即可。
  2. 假设n=25,那么由质数分解后,出现5的数总共有5, 10, 15, 20, 25,尾数出现零的个数为6个;
  3. 其中25为5^2,因此,n=25的可以简单记为n分别除以5^1,5^2,5^3,...,5^k,结果的和。

综上,代码为:

class Solution {
public:
    int trailingZeroes(int n) {
        // 判断n是否为零,若为零则返回零,否则返回质数分解中5出现的个数。
        return n == 0 ? 0 : n/5 + trailingZeroes(n/5);
    }
};

相关文章

  • LeetCode-172-阶乘后的零

    LeetCode-172-阶乘后的零 172. 阶乘后的零[https://leetcode-cn.com/pro...

  • 172. 阶乘后的零

    172. 阶乘后的零

  • 阶乘后的零

    阶乘后的零 Leetcode 172. 阶乘后的零 题意 给定一个整数n, 返回n!结果尾数中零的数量。 示例一 ...

  • 阶乘后的零

    题目描述:给定一个整数 n,返回 n! 结果尾数中零的数量。 示例:输入: 5输出: 1解释: 5! = 120,...

  • 阶乘后的零

    题目 难度级别:简单 给定一个整数 n,返回 n! 结果尾数中零的数量。 示例 1: 输入: 3输出: 0解释: ...

  • 阶乘后的零

    tag 阶乘后0的个数 题目 给定一个整数 n,返回 n! 结果尾数中零的数量。 示例 1:输入: 3输出: 0解...

  • 41阶乘后的零

    给定一个整数 n,返回 n! 结果尾数中零的数量。 示例 1:输入: 3输出: 0解释: 3! = 6, 尾数中没...

  • 【leetcode】阶乘后的零

    【leetcode】阶乘后的零 给定一个整数 n,返回 n! 结果尾数中零的数量。 示例 1: 输入: 3输出: ...

  • leetCode阶乘后的零

    最近做一些lc上的题,有些感觉挺好的记录一下:原题描述如下://给定一个整数 n,返回 n! 结果尾数中零的数量。...

  • 172:阶乘后的零

    题意 给定一个整数 n ,返回 n! 结果中尾随零的数量。 提示 n! = n * (n - 1) * (n - ...

网友评论

      本文标题:阶乘后的零

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