LeetCode-172. Factorial Trailing Zeroes [C++][Java]

LeetCode-172. Factorial Trailing Zeroesicon-default.png?t=M276https://leetcode.com/problems/factorial-trailing-zeroes/

题目描述

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 <= 10^4

解题思路

【C++】

class Solution {
public:
    int trailingZeroes(int n) {
        return n == 0 ? 0 : n / 5 + trailingZeroes(n / 5);
    }
};

【Java】

class Solution {
    public int trailingZeroes(int n) {
        return n == 0 ? 0 : n / 5 + trailingZeroes(n / 5);
    }
}

你可能感兴趣的:(LeetCode刷题怪,leetcode,算法,职场和发展)