CSES - Trailing Zeros | Số không ở cuối

View as PDF

Points: 900 (p) Time limit: 1.0s Memory limit: 512M Input: stdin Output: stdout

Nhiệm vụ của bạn là đếm số lượng chữ số \(0\) ở cuối trong \(n\)\(!\).

Ví dụ: \(20! = 2432902008176640000\) và nó có \(4\) chữ số không ở cuối

Input

  • Chỉ một dòng duy nhất chứa một số nguyên \(n\).

Output

  • In ra số lượng chữ số không ở cuối của \(n!\).

Constraints

  • \(1 \leq n \leq 10^9\)

Example

Sample input

20

Sample output

4

Comments

  • NeyuQ709 6:51 p.m. 22 mar, 2025

    (python3)
    def count_trailing_zeros(n):
    count = 0
    power_of_5 = 5
    while n >= power_of_5:
    count += n // power_of_5
    power_of_5 *= 5
    return count

    n = int(input())
    print(count_trailing_zeros(n))

    • huydoanminh0102 8:38 p.m. 24 feb, 2025

      help

      • Eheeeee 9:23 a.m. 7 dec, 2023

        Hint:
        -Để tính được số lượng số 0 sau cùng, ta lấy tổng của số n chia cho các lũy thừa của 5

        • dovanchung9206 1:38 a.m. 20 aug, 2023

          n tới 10 mũ 9 thì làm kiểu gì vậy ae

          • letangphuquy 7:57 p.m. 23 jul, 2023

            Giải thích test VD:
            \(20!\)\(2,4,6,8,10,12,14,16,18\) như vậy thì khi PT TSNT bậc của \(2\) là: \(...\)
            \(20!\)\(5,10,15,20\) như vậy thì khi PT sẽ có tổng bậc của \(5\)\(\dots\).

            • ttcl2705 5:38 p.m. 30 apr, 2023

              This comment is hidden due to too much negative feedback. Click here to view it.