문제 링크: https://www.acmicpc.net/problem/1676
백준 정수론 및 조합론 11단계 - 1676번 팩토리얼 0의 개수를 풀어보았다.
풀이: 0은 10이 몇 번 곱해지느냐로 나타내지고, 10은 2와 5의 곱이므로 팩토리얼에서 2와 5가 몇 번 나타나는지 알아내면 된다.
C++
Python
n=int(input())
fives=0 # 5의 개수
twos=0 # 2의 개수
while n>1:
nn=n
while nn%5==0 or nn%2==0:
if nn%5==0:
fives+=1
nn=nn//5
if nn%2==0:
twos+=1
nn=nn//2
n-=1
print(min(fives,twos)) # 둘 중 적은거 출력
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
스택 풀이 (0) | 2023.01.10 |
---|---|
조합 0의 개수 풀이 (0) | 2023.01.09 |
패션왕 신해빈 풀이 (0) | 2023.01.09 |
다리 놓기 풀이 (0) | 2023.01.09 |
이항 계수 2 풀이 (0) | 2023.01.09 |