g0101_0200.s0172_factorial_trailing_zeroes.Solution Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java21 Show documentation
Show all versions of leetcode-in-java21 Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
package g0101_0200.s0172_factorial_trailing_zeroes;
// #Medium #Top_Interview_Questions #Math #Udemy_Integers
// #2022_06_26_Time_1_ms_(85.61%)_Space_42.1_MB_(7.61%)
/**
* 172 - Factorial Trailing Zeroes\.
*
* Medium
*
* 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?
**/
public class Solution {
public int trailingZeroes(int n) {
int base = 5;
int count = 0;
while (n >= base) {
count += n / base;
base = base * 5;
}
return count;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy