【前言】坚持日更LeetCode刷题系列
不积跬步,无以至千里;不积小流,无以成江海。愿与诸君共勉!
【题目】172.阶乘后的零
题目描述:给定一个整数 n,返回 n! 结果尾数中零的数量。
示例:
示例 1:
输入: 3
输出: 0
解释: 3! = 6, 尾数中没有零。
示例 2:
输入: 5
输出: 1
解释: 5! = 120, 尾数中有 1 个零.
说明: 你算法的时间复杂度应为 O(log n) 。
思路一:此题主要是数学知识–质因数的分解,算出有多少个质因数5即可。不多说了,直接贴代码把。
class Solution(object):
def trailingZeroes(self, n):
"""
:type n: int
:rtype: int
"""
count = 0
while(n>0):
count = count + n//5
n = n//5
return count
运行结果:

分享就到这里了,欢迎大家一起交流讨论。
注明:
题目来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/factorial-trailing-zeroes/
本文详细解析了LeetCode题目172“阶乘后的零”,介绍了如何通过质因数分解计算n!结果尾数中零的数量,并提供了O(logn)时间复杂度的算法实现。
8万+

被折叠的 条评论
为什么被折叠?



