#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
void sieveOfEratosthenes(int N, vector<bool>& isPrime) {
isPrime[0] = isPrime[1] = false;
for (int i = 2; i <= sqrt(N); i++) {
if (isPrime[i]) {
for (int j = i * i; j <= N; j += i) {
isPrime[j] = false;
}
}
}
}
int main() {
int M, N;
cin >> M >> N;
vector<bool> isPrime(N + 1, true);
sieveOfEratosthenes(N, isPrime);
for (int i = M; i <= N; i++) {
if (isPrime[i]) {
cout << i << '\n';
}
}
}
'개발일지 > 알고리즘' 카테고리의 다른 글
백준 15686번 : 치킨 배달 (0) | 2025.02.02 |
---|---|
백준 14889번 : 스타트와 링크 (0) | 2025.02.02 |
백준 1978번 : 소수 찾기 (0) | 2025.02.02 |
백준 1037번 : 약수 (1) | 2025.02.02 |
백준 9095번 : 1, 2, 3 더하기 (0) | 2025.02.02 |