https://www.acmicpc.net/problem/1929
에라토스테네스의 체 (소수 판별 알고리즘)
💡 대량의 소수 한꺼번에 판별해야 할 경우에 이용
#include <iostream>
using namespace std;
int arr[1000001];
int main() {
int a, b;
cin >> a >> b;
for (int i = 2; i <= b; i++) {
arr[i] = i;
}
for (int i = 2; i*i <= b; i++) {
if (arr[i] == 0) continue;
for (int j = 2 * i; j <= b; j += i) {
arr[j] = 0;
}
}
for (int i = a; i <= b; i++) {
if (arr[i] != 0)
cout << i << '\n';
}
return 0;
}
좋은 정보 감사합니다