카테고리 없음
[알고리즘]백준 1676번: 팩토리얼 0의 갯수
Im_light.J
2023. 2. 9. 03:01
728x90
알고리즘 유형: 수학
문제
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)
출력
첫째 줄에 구한 0의 개수를 출력한다
풀이
파이썬의 경우 arr[::-1]을 통해 배열을 뒤집을 수 있습니다.
이를 이용해서 배열의 뒤에서부터 0인지 확인하고 맞으면 cnt를 더해주고 아니면 반복문을 탈출합니다
import sys
N =int(sys.stdin.readline().strip())
num =1
for i in range(1,N+1):
num =num*i
cnt=0
for i in str(num)[::-1]:
if i =="0":
cnt+=1
else:
break
print(cnt)
728x90