Published 2020. 12. 29. 01:49
 

1929번: 소수 구하기

첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.

www.acmicpc.net

#include <iostream>
using namespace std;
const int MAX = 1000000;
bool check[MAX+1];
int main() {
    check[0] = check[1] = true;
    for (int i=2; i*i<=MAX; i++) {
        if (check[i] == false) {
            for (int j=i+i; j<=MAX; j+=i) {
                check[j] = true;
            }
        }
    }
    int m, n;
    cin >> m >> n;
    for (int i=m; i<=n; i++) {
        if (check[i] == false) {
            cout << i << '\n';
        }
    }
    return 0;
}

 

'Problem set' 카테고리의 다른 글

[백준] 1978: 소수 찾기  (0) 2020.12.29
[백준] 1934: 최소공배수  (0) 2020.12.29
[백준] 1874: 스택 수열  (0) 2020.12.29
[백준] 1676: 팩토리얼 0의 개수  (0) 2020.12.29
[백준] 1463: 1로 만들기  (0) 2020.12.29
복사했습니다!