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

 

1676번: 팩토리얼 0의 개수

N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.

www.acmicpc.net

풀이

팩토리얼 함수 작성 이후에 나온 숫자를 문자열로 만들어서 뒤부터 계산해준다.

# 1676번 팩토리얼 0의 개수

def factorial(n):
    if (n <= 1): return 1
    else: return n * factorial(n-1)

n = int(input())
number = str(factorial(n))

cnt = 0
for i in number[::-1]:
    if i == '0':
        cnt += 1
    else:
        break
print(cnt)

출력결과

개발자 성현