알고리즘/백준

1564.팩토리얼5 python

1.5볼트 2023. 5. 4. 21:30
728x90

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

 

1564번: 팩토리얼5

첫째 줄에 정수 N이 주어진다. N은 1,000,000보다 작거나 같다. 또, 9보다 크거나 같다.

www.acmicpc.net

 

가장 뒤에 0을 제외하고 5자리를 가져로는 문제다 그냥 팩토리얼 계산하면 수가 커져서 뒤에 자리만 계산하면서 나간다 아마도 5자리만 가져오면 곱할때 더 앞에 있는 숫자가 영향을 미치는걸 제거하니까 모든 영향을 받게하기위해 12 개를 가져옴

s=1
n=int(input())
for i in range(1,n+1):
    s*=i
    s=int(str(s).rstrip("0")[-12:])
print(str(s)[-5:])