티스토리 뷰

728x90

 

https://www.acmicpc.net/problem/1676

 

1676번: 팩토리얼 0의 개수

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

www.acmicpc.net


  • 해설 : 

N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 문제이다.

 

 

 


  • 풀이 :

자릿수를 계산하기 위헤 뒤에서부터 10씩 나누어가며 0의 개수를 카운트해주고 0이 아닌 숫자가 나올경우 카운트를 출력하였다.

 

 

 


  • 소스코드 : 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import sys
input = sys.stdin.readline
 
if __name__ == "__main__":
    ans = 1
    for i in range(1,int(input())+1,1):
        ans *= i
    start = 10
    cnt = 0
    while True:
        if ans%start != 0:
            break
        cnt +=1
        start *= 10
    print (cnt)
cs
320x100
댓글
© 2022 WonSeok, All rights reserved