아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

세 자리 숫자

시간 제한1초메모리 제한256 MB

요약
10^7 이하의 n이 주어지면 n!에서 뒤에 붙은 0을 모두 지운 뒤 마지막 세 자리 숫자를 앞자리 0까지 그대로 출력합니다.
난이도

보통10점 중 5점

유형
정수론, 수학
정답자
아직 제출이 없습니다

문제

페르는 팩토리얼에 푹 빠져 있다. 계산하고, 어림하고, 팩토리얼에 관한 글을 읽고, 그림으로 그리고, 꿈에서도 팩토리얼을 본다. 등에는 12!=47900160012! = 479001600 이라는 값을 문신으로 새겼다.

페르는 오래전부터 팩토리얼 값의 끝에 0이 여러 개 붙는다는 점을 알아채고, 끝에 붙은 0의 개수를 세는 프로그램도 만들었다. 예를 들어 12!12! 은 600으로 끝나므로 끝에 붙은 0은 2개다. 이제 한 걸음 더 나아가 끝에 붙은 0 바로 앞의 세 자리를 보려고 한다. 12!12! 에서 끝의 0을 떼어내면 마지막 세 자리는 016이다.

정수 nn 이 주어진다. n!n! 에서 끝에 붙은 0을 모두 떼어낸 뒤 남은 값의 마지막 세 자리를 구하라. 남은 자리가 세 개보다 적으면 있는 자리를 모두 구한다.

입력

첫째 줄에 정수 nn (1≤n≤1071 \le n \le 10^7) 이 주어진다.

출력

n!n! 에서 끝에 붙은 0을 모두 떼어낸 값의 마지막 세 자리를 한 줄에 출력한다. 맨 앞자리가 0이어도 그대로 출력한다. 남은 값이 4032이면 032를 출력한다. 남은 값의 자릿수가 세 자리보다 적으면 그 값을 그대로 출력한다.

예제2

  1. 예제 1

    입력
    5
    
    예상 출력
    12
    
  2. 예제 2

    입력
    12
    
    예상 출력
    016