목차
코드
#include <iostream>
#include <cmath>
using namespace std;
int judge_prime(int n){
if(n == 1) return 0;
for(int i=2; i <= sqrt(n); i++){
if(n%i == 0) return 0;
}
return 1;
}
int main(){
int n1, n2;
bool arr[1000001] = {0,}; // 0이 소수, 1은 not 소수
cin >> n1 >> n2;
for(int i=n1; i <=n2; i++){
if(arr[i] == 1) continue;
if(judge_prime(i)){
cout << i << "\n";
for(int j=1; i*j<=1000000; j++ ){
arr[i*j] = 1;
}
}
}
}
사견
특별히 할 말이 없는 문제이다.
이전에 몇 번 풀었던 소수 문제이기 때문.
에라토스테네스의 체를 활용하여 풀면 되는 간단한 문제이다.
2581번: 소수 문제풀이
이전에 내가 풀었던 이 포스팅을 보면 이해에 조금 도움이 될 수 있다.
'공부 > 백준' 카테고리의 다른 글
9020번: 골드바흐의 추측(백준 C++) (0) | 2020.10.15 |
---|---|
4948번: 베르트랑 공준(백준 C++) (2) | 2020.10.15 |
2581번: 소수(백준 C++) (0) | 2020.10.14 |
1978번: 소수찾기(백준 C++) (0) | 2020.10.13 |
1011번: Fly me to the Alpha Centauri(백준 C++) (0) | 2020.10.13 |