Given an integer n, return the number of trailing zeroes in n!.
Follow up: Could you write a solution that works in logarithmic time complexity?
Example 1:
Input: n = 3
Output: 0
Explanation: 3! = 6, no trailing zero.
Example 2:
Input: n = 5
Output: 1
Explanation: 5! = 120, one trailing zero.
Example 3:
Input: n = 0
Output: 0
Constraints:
- 0 <= n <= 10^4
Solution in python:
class Solution:
def trailingZeroes(self, n: int) -> int:
def factor(n):
k = 0
while n % 5 == 0:
n //= 5
k +=1
return k
result = 0
for i in range(1, n+1):
result += factor(i)
return result
留言