List<Integer> primes = new ArrayList<>();
boolean[] primeCheck = new boolean[N+1];
for (int i = 2; i <= N; i++) {
if (!primeCheck[i]) {
primes.add(i);
for (int j = 2; i*j <= N; j++) {
primeCheck[i*j] = true;
}
}
}
μ΄μ μλ λ€μκ³Ό κ°μ΄ λ¨μνκ² μ΄μ€ν¬λ¬Έμ λλ € μμλ₯Ό ꡬνλ€.
for (int i = 2; i <= N; i++) {
for (int j = 2; i*j <= N; j++) {
primeCheck[i*j] = true;
}
}
νμ§λ§ μ΄λ κ² νμ§ μκ³ μμ μ½λμ κ°μ΄ if (!primeCheck[i])
쑰건μ λ£μ΄μ£Όλ©΄ ν¨μ¬ λ μκ°λ³΅μ‘λλ₯Ό μ€μΌ μ μλ€.