시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 | 256 MB | 308290 | 93977 | 66101 | 28.367% |
문제
M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.
출력
한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다.
예제 입력 1 복사
3 16
예제 출력 1 복사
3
5
7
11
13
이 문제는 A부터B사이에 있는 소수를 구하는 문제 입니다.
2부터 시작하여 숫자의 배수를 지우는 식으로 풀수 있음니다
#include <bits/stdc++.h>
using namespace std;
int table[1000001];
int main()
{
int a,b;
scanf("%d%d",&a,&b);
for(int i=1;i<=b;i++)
{
if(i!=1)
table[i]=i;
}
for(int i=2;i<=b;i++)
{
if(table[i]!=0)
for(int j=i+i;j<=b;j+=i)
{
table[j]=0;
}
}
for(int i=a;i<=b;i++)
{
if(table[i])
printf("%d\n", i);
}
return 0;
}
'알고리즘' 카테고리의 다른 글
백준 15727번 조별과제를 하려는데 조장이 사라졌다 (0) | 2025.03.03 |
---|---|
백준 3040번 백설 공주와 일곱 난쟁이 (0) | 2025.02.24 |
백준 1919번 애너그램 만들기 풀이 python (0) | 2025.02.22 |