많은수의 소수 판변을 할때 유용한 방법

- 가장 작은 소수를 찾기
- 해당 수의 배수를 모두 지우기
boolean[] isNotPrime = new boolean[N + 1];
isNotPrime[0] = true;
isNotPrime[1] = true;
for(int i = 2; i * i <= N; i++){
if(!isNotPrime[i]){
for(int j = i * i; j <= N; j += i){ //앞쪽에서 제거했기때문에 i*i부터 시작
isNotPrime[j] = true;
}
}
}'Algorithm > 정수론' 카테고리의 다른 글
| Manhattan Distance (0) | 2026.03.23 |
|---|---|
| 유클리드 호제법 (0) | 2026.03.07 |