Leetcode练习(Python):数学类:第172题:阶乘后的零:给定一个整数 n,返回 n! 结果尾数中零的数量。

题目:
阶乘后的零:给定一个整数 n,返回 n! 结果尾数中零的数量。
说明: 你算法的时间复杂度应为 O(log n) 
思路:
结果末尾的0只可能由5*2,5*4,5*6和5*8得来,往小了说就是5*2,因此找出可能有多少个5是本题的关键。因为限制了时间复杂度,因此使用这样的思路,没有限制的话,第一开始想到的是暴力法。
程序:
class Solution:
    def trailingZeroes(self, n: int) -> int:
        if n == 0:
            return 0
        if n < 5:
            return 0
        result = 0
        while n >= 5:
            n = (n // 5)
            result = result + n
        return result