- 생각
19996~19999까지 곱하게 된다면 5자리수 * 5자리수 * 5자리수 * 5자리수 이므로 숫자가 조단위가 됩니다. 이 점에 유의하셔야 시간초과를 피할 수 있다.
- 코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
static long answer;
public static void main(String[] args) throws Exception {
SetData();
System.out.println(answer%10);
}
private static void SetData() throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
long input = Long.parseLong(br.readLine());
answer =1;
for(int i=1;i<=input;i++) {
answer*=i;
answer %= 1000000000;
while (answer % 10 == 0)
answer /= 10;
}
}
}
'algorithm' 카테고리의 다른 글
[BOJ/JAVA] 백준 11000번 : 강의실 배정 (0) | 2021.01.22 |
---|---|
[BOJ/JAVA] 백준 9663번 : N-Queen (0) | 2021.01.21 |
[BOJ/JAVA] 백준 2661번 : 좋은수열 (0) | 2021.01.20 |
[BOJ/JAVA] 백준 17417번 : 게리멘더링 (0) | 2021.01.20 |
[BOJ/JAVA] 백준 2606번 : 바이러스 (0) | 2021.01.19 |