
간단해 보이는데 자꾸 틀렷대서
범위를 보니 0보다 크고 500보다 작은 수
int -> long 순으로 실행 해봤지만 500은 커버가 안된다
그래서 검색해서 찾은 자료형 BigInteger
거의 무한대라고 보면 된다.
import java.io.*;
import java.math.BigInteger;
import java.util.*;
public class Main {
public static final int MAX = 1000000;
public static void main(String args[]) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int inputNum = Integer.parseInt(reader.readLine());
BigInteger answer = BigInteger.valueOf(1);
// 팩토리얼 값 계산
for(long i = 2; i <= inputNum; i++){
answer = answer.multiply(BigInteger.valueOf(i));
}
String[] number = answer.toString().split("");
int cnt = 0;
// 0이 아닌 숫자가 나오면 break
for(int i = number.length-1; i >= 0; i--){
if(number[i].equals("0")){
cnt++;
}else break;
}
bw.append(Integer.toString(cnt));
bw.write("\n");
reader.close();
bw.flush();
}
}
'PROGRAMMING > ALGORITHM' 카테고리의 다른 글
| [백준] 9613번 GCD 합 JAVA (0) | 2021.04.26 |
|---|---|
| [기초] 최소공배수 GCD & 최대공약수 LCM JAVA (0) | 2021.04.25 |
| [백준] 10872번 팩토리얼 JAVA (0) | 2021.04.23 |
| [백준] 6588번 골든바흐의 추측 JAVA (0) | 2021.04.23 |
| [활용] 에라토스테네스의 체로 소수 배열 만들기 JAVA (0) | 2021.04.22 |