또 뭐하지
백준 1676번 팩토리얼 0의 개수 본문
728x90
■ 처음 시도했던 코드는 런타임에러가 났다..
import math
N = int(input())
a = math.factorial(N)
res = 0
while True :
if a%10 == 0:
res += 1
a /= 10
else :
break
print(res)
■ 새로 제출한 코드는 문자열을 비교하는 방식으로 했다
import math
N = int(input())
a = str(math.factorial(N))
ret = 0
for i in range(len(a)-1,0,-1):
if a[i] == '0':
ret += 1
else :
break
print(ret)
https://hwiyong.tistory.com/360
백준 1676번(python)
N = int(input()) print(N//5 + N//25 + N//125) 팩토리얼로 얻을 수 있는 수를 인수 분해 했을때, 0이 늘어나는 순간은 10(2x5)가 곱해지는 순간이다. 따라서 5의 개수를 찾으면 쉽다. 예를 들어, 10!이면 5에서
hwiyong.tistory.com
수학을 잘하면 코드가 단순해진다는걸 또 다시 느낀 문제 ㅠ..
'Study > Coding Test' 카테고리의 다른 글
백준 7568번 덩치 (0) | 2024.11.20 |
---|---|
백준 2751번 수 정렬하기 2 (0) | 2024.11.20 |
백준 1436번 영화감독 숌 (0) | 2024.11.19 |
백준 28702번 FizzBuzz (0) | 2024.11.11 |
백준 2775번 부녀회장이 될테야 (0) | 2024.11.02 |