
https://www.acmicpc.net/problem/1676

def Factorial(n): # 팩토리얼 구하기(재귀함수)
    if n == 1:
        return 1
    else:
        return n * Factorial(n-1)
    
num = Factorial(int(input())) # ex) 10 입력 시, num = 3628800
cnt = 0
for i in str(num)[::-1]: # ex) '0088263'에서 하나씩 꺼내어
    if i == '0': # '0'이면 cnt 증가
        cnt += 1
    else: # '0'이 아니면 for문 탈출
        break
print(cnt) # '0' 개수 출력
# 풀이 과정
1. 재귀함수로 Factorial을 구현한다.
2. 입력한 수(num)의 Factorial을 구한다.
3. 구한 Factorial을 뒤집힌 문자열로 만들고, '0'의 개수를 구한다.
RecursionError가 발생하였다.
따라서 Factorial 함수를 for문으로 수정해주었다.
def Factorial(n):
    result = 1
    for i in range(1, n+1):
        result *= i
    return result
    
num = Factorial(int(input()))
cnt = 0
for i in str(num)[::-1]:
    if i == '0':
        cnt += 1
    else:
        break
print(cnt)
Factorial 계산 시 math.factorial() > for문 > 재귀함수 순으로 빠르다고 하다.
n = int(input())
cnt = 0
while(n>1):
    cnt += n // 5
    n = n // 5
print(cnt)
감탄스럽다..