백준(Python) 풀이/수학

백준(Python) 1676번 팩토리얼 0의 개수 풀이

개발윗미 2021. 10. 9. 11:22

Python으로 구현한 1676번 팩토리얼 0의 개수 문제 풀이입니다.

 

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

 

1676번: 팩토리얼 0의 개수

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

www.acmicpc.net


def factorial(x) :
  value = 1
  for i in range(2, x + 1) :
    value *= i
  return value

n = int(input())
result = str(factorial(n))

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

print(count)

 

n을 입력받아 factorial( ) 메서드를 통해 n! 값을 계산하여 문자열로 변환한다.

 

반복문을 수행하여 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는데, 0이 아니라면 반복문을

 

빠져나온 뒤 count 값을 출력한다.