코딩테스트 대비/BOJ

[Baekjoon/Python] 1676번: 팩토리얼 0의 개수 - 효과는 굉장했다!

bluetag_boy 2021. 11. 9. 02:02
반응형
 

1676번: 팩토리얼 0의 개수

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

www.acmicpc.net

알고리즘 분류

  • 수학

 

SOLUTION

from math import factorial # factorial 함수를 쓰기 위해 import math
import sys

N = int(sys.stdin.readline())
factorial_str = str(factorial(N)) 
cnt = 0

for i in range(len(factorial_str)-1,-1,-1): # 0의 개수 탐색
    if factorial_str[i] == '0': # 0이면 cnt += 1
        cnt += 1
    
    else: # 0이 아니면 for 문 종료
        break

print(cnt)