소수 구하기(1929)
Last updated
Last updated
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int M = Integer.parseInt(st.nextToken());
int N = Integer.parseInt(st.nextToken());
//배열을 생성, 초기화
//여기서 초기화할때는 자기 수로 초기화시켜줌
int arr[] = new int[N+1];
for(int i=2; i<=N; i++){
arr[i] = i;
}
//특정수의 배수는 다 지움
//지운다는 개념을 0으로 잡았음
for(int i=2; i*i<=N; i++){
if(arr[i]==0) continue;
for(int k=i*i; k<=N; k+=i){
arr[k]=0;
}
}
//지워진수인 0이 아닌 모든 수를 출력하면 그것이 소수
for(int i=M; i<=N; i++){
if(arr[i]!=0){
System.out.println(arr[i]);
}
}
}
}