[백준/ 파이썬] 1676 팩토리얼 0의 개수

#문제링크

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

 

1676번: 팩토리얼 0의 개수

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

www.acmicpc.net

#나의풀이

if __name__ == '__main__':
    N = int(input())
    value = 1
    count = 0

    for i in range(1, N+1):
        value *= i

    value = list(str(value))

    for i in range(len(value)):
        if value[-1] == '0':
            value.pop()
            count += 1
        else:
            break

    print(count)

#해설

팩토리얼값을 구한후 1의 자리 부터 검사해 0이 아닌 다른수가 나올때까지 0을 카운팅하는 문제

시간제한도 널널해서 단순하게 풀었다.

 

팩토리얼을 구한 값을 문자열 리스트로 바꾼후 맨 끝자리부터 검사해서 0일경우 카운팅해주고 pop으로 빼주었다.

만약 다른 수를 만나면 바로 브레이크로 반복문을 빠져나왔다.