풀이
"백준 1978 소수 찾기"문제와 유사하다.
단, 1은 소수가 아니다 arr[0] = 0으로 초기화해주자.
소스코드
#include <stdio.h>
#include <math.h>
#define MAX 1000000
int arr[MAX];
int main(){
int idx = 3;
for (int i = 0; i < MAX; i++)
arr[i] = i+1;
for (int i = 2; i <= sqrt(MAX); i++)
if (arr[i-1])
for (int j = i*2; j <= MAX; j += i)
arr[j-1] = 0;
arr[0] = 0;
int M, N, prime = 0, num;
scanf("%d %d", &M, &N);
for (int i = M-1; i < N; i++){
if (arr[i])
printf("%d\n", arr[i]);
}
}
출처 및 참고자료
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 1966] 프린터 큐 [C] (0) | 2021.07.28 |
---|---|
[백준 1904] 01타일 [C] (0) | 2021.07.28 |
[백준 1874] 스택 수열 [C] (0) | 2021.07.28 |
[백준 1011] Fly me to the Alpha Centauri [C] (0) | 2021.07.27 |
[백준 11718] 그대로 출력하기 [C] (0) | 2021.07.27 |