지나가던 개발자
[Python] 백준 1676번(팩토리얼 0의 개수) 문제 풀이 본문
팩토리얼 값을 구한 후, 팩토리얼 값을 계산한 뒤부터 0의 개수를 세서 출력하는 프로그램입니다. 예를 들어 N!이 10100이면 2를, 10000이면 4를 출력하는 식이죠. (문제 대충 읽고 그냥 count 했다가 틀렸습니다...)
팩토리얼에 관한 글은 이미 저번에 썼기 때문에 팩토리얼에 관한 내용은 넘어가고, 바로 코드를 공개하겠습니다.
import math
factorial = list(str(math.factorial(int(input()))))
length = len(factorial) - 1
zeros = 0
while True:
if factorial[length] == '0':
zeros += 1
length -= 1
else:
break
print(zeros)
math 모듈을 이용해 입력받은 수의 팩토리얼 값을 구한 후 그를 리스트로 만듭니다. 그 뒤 리스트 뒤부터 0 수를 세고, 만약 0가 아닌 수가 나오면 멈추고 0의 수를 출력하는 코드이죠.
맞았습니다!!
'PS > Python' 카테고리의 다른 글
[Python] 백준 1417번(국회의원 선거) 문제 풀이 (0) | 2022.01.04 |
---|---|
[Python] 백준 1629번(곱셈) 문제 풀이 (1) | 2022.01.04 |
[Python] 백준 10178번(할로윈의 사탕) 문제 풀이 (1) | 2021.12.21 |
[Python] 백준 1330번(두 수 비교하기) 문제 풀이 (1) | 2021.12.21 |
[Python] 백준 2753번(윤년) 문제 풀이 (0) | 2021.12.21 |
Comments