문제
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)
출력
첫째 줄에 구한 0의 개수를 출력한다.
예제 입력 1 복사
10
예제 출력 1 복사
2
예제 입력 2 복사
3
예제 출력 2 복사
0
코드
def factorial(num):
if(num==1 or num==0):
return 1
return num*factorial(num-1)
if __name__ == "__main__":
num=int(input())
chk=0
fac_num=list(str(factorial(num)))
for i in range(len(fac_num)-1,0,-1):
if(fac_num[i]=='0'):
chk+=1
else:
break
print(chk)
느낀점
728x90
'Algorithm > 백준' 카테고리의 다른 글
백준 13023번 : ABCDE (python) (0) | 2021.12.09 |
---|---|
백준 1373번 : 2진수 8진수 (python) (0) | 2021.12.03 |
백준 17087번 : 숨바꼭질 6 (python) (0) | 2021.12.03 |
백준 10872번 : 팩토리얼(python) (0) | 2021.12.02 |
백준 6588번 : 골드바흐의 추측(python) (0) | 2021.12.01 |