

첫 시도는 실패했다.
출력 예시 값은 제대로 출력되었는데, 어떤 예외가 있는지 생각이 안난다..

지피티에 도움을 요청하니 만약 i 가 1일때의 경우를 생각하지 않아서였다.
i가 1이라면, ck 가 false가 되어 sum과 min에 값이 들어가게된다.
그래서 시작할 때 i가 1이라면 ck가 true가 되게 끔 설정해줬다.
하지만 소수를 찾는 방법이 굉장히 비효율적인 코드여서 공략의 힘을 빌렸다.
다른 사람들의 풀이와 지피티의 풀이도 에라토스테네스 체 알고리즘을 이용했다.
boolean[] isPrime = new boolean[N+1];
for(int i = 2; i <= N; i++){
isPrime[i] = true;
}
for(int i = 2; i * i <= N; i++) {
if(isPrime[i]) {
for(int j = i * i; j <= N; j += i) {
isPrime[j] = false;
}
}
}

에라토스테네스 체 알고리즘을 적용시켜서 풀어보았다.

시간이 확실히 단축되었음을 확인할 수 있다.