문제
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)
출력
첫째 줄에 구한 0의 개수를 출력한다.
예제 입력 1
10
예제 출력 1
2
예제 입력 2
3
예제 출력 2
0
팩토리얼 계산을 편리하게 하도록 math 모듈을 활용했습니다.
계산한 값을 문자열로 변환하여 순서를 역으로 바꾼후 순차적으로 조회를 하면 간단하게 값을 찾아낼 수 있습니다.
import math
N = int(input())
str2 = math.factorial(N)
m = str(str2)
m = list(m)
m.reverse()
cnt = 0
for i in m:
if i != '0':
break
else:
cnt += 1
print(cnt)
'알고리즘 > 문제풀이' 카테고리의 다른 글
백준 11399 ATM - Python (0) | 2023.03.19 |
---|---|
백준 11047번 동전0 - Python (0) | 2023.03.17 |
백준 1620번 나는야 포켓몬 마스터 이다솜 - Python (0) | 2023.03.14 |
백준 1541번 잃어버린 괄호 - Python (0) | 2023.03.13 |
백준 1927번 최소힙 - Python (0) | 2023.03.12 |