Coding Test Practice/백준

백준 1676 파이썬, 팩토리얼 0의 개수

still..epochs 2022. 8. 23. 23:21

팩토리얼 0의 개수

 
시간                  제한메모리                    제한                       제출                         정답                       맞힌 사람정답 비율
2 초 128 MB 46556 22327 18534 47.975%

문제

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

입력

첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)

출력

첫째 줄에 구한 0의 개수를 출력한다.

예제 입력 1 복사

10

예제 출력 1 복사

2

예제 입력 2 복사

3

예제 출력 2 복사

0

 

 

문제 해석

n! 처럼 팩토리얼로 계산 된, 이후의 숫자를 기준으로 문제의 설명에 따라 풀이를 진행하면 된다. 한참동안 문제 해설이 이해가 안되서 고민했다는... 코드는 다음과 같다

# 팩토리얼 0의 개수
N = int(input())
facto = 1
for i in range(1,N+1):
    facto *= i

zero = 0
for i in str(facto)[::-1]:
    if i == '0':
        zero += 1
    else:
        break

print(zero)

 

 

이 코드를 제출하면 다음과 같은 시간이 걸린다!