티스토리 뷰

Algorithm/BOJ

백준 1929번 C++

poopooreum 2023. 8. 3. 18:44
반응형
백준 1929번 소수 구하기

https://www.acmicpc.net/problem/1929

1929번: 소수 구하기

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

www.acmicpc.net



정답 코드

#include<iostream>
using namespace std;
int a, b;
int arr[1000001] = { 1,1,0 };
void find(int a, int b);
int main() {
	cin >> a >> b;
	find(a, b);
}
void find(int a, int b) {

	for (int x = 2; x < 1000001/x; x++) {
		if (arr[x] == 1)
			continue;
		for (int y = x *x; y <1000001; y += x)
			if(y%x==0)
			arr[y] = 1;
	}
	for (int x = a; x <= b; x++) {
		if (arr[x] == 0)
			cout << x << "\n";
	}
}

문제 풀이

에라토스테네스의 체를 이용해서 푸는 문제입니다.

반응형

'Algorithm > BOJ' 카테고리의 다른 글

백준 1934번 C++  (0) 2023.08.03
백준 1932번 C++  (0) 2023.08.03
백준 1927번 C++  (0) 2023.08.03
백준 1926번 C++  (0) 2023.08.03
백준 1920번 C++  (0) 2023.08.02
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함