Welcome to Subscribe On Youtube

172. Factorial Trailing Zeroes

Description

Given an integer n, return the number of trailing zeroes in n!.

Note that n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1.

 

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 <= 104

 

Follow up: Could you write a solution that works in logarithmic time complexity?

Solutions

  • class Solution { public int trailingZeroes(int n) { int ans = 0; while (n > 0) { n /= 5; ans += n; } return ans; } } 
  • class Solution { public: int trailingZeroes(int n) { int ans = 0; while (n) { n /= 5; ans += n; } return ans; } }; 
  • class Solution: def trailingZeroes(self, n: int) -> int: ans = 0 while n: n //= 5 ans += n return ans 
  • func trailingZeroes(n int) int { ans := 0 for n > 0 { n /= 5 ans += n } return ans } 
  • function trailingZeroes(n: number): number { let ans = 0; while (n > 0) { n = Math.floor(n / 5); ans += n; } return ans; } 

All Problems

All Solutions