코딩테스트/백준

백준 9020 : 골드바흐의 추측 _자바 Java

플래시🦥 2023. 1. 24.
반응형

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

 

9020번: 골드바흐의 추측

1보다 큰 자연수 중에서  1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아

www.acmicpc.net


import java.io.*;
import java.util.*;

public class Main {
	static boolean[] prime;
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int T = Integer.parseInt(br.readLine());
		
		prime =new boolean[10001];
		Arrays.fill(prime, true);
		
		prime[0]=false;
		prime[1]=false;
		
		for(int i=2;i<10001;i++) {
			if(prime[i]) {
				for(int j=i*i;j<10001;j+=i) {
					prime[j]=false;
				}				
			}
		}

		
		for(int i=0;i<T;i++) {
			int num =Integer.parseInt(br.readLine());
			int tmp = num/2;	//각 소수의 차가 작은 것부터 찾기 위해 
			
			for (int j = tmp; j >= 2; j--) {
				if(prime[j] && prime[num-j]) {
					System.out.println(j+" "+(num-j));
					break;
				}
			}
			
		}
		br.close();
	}// main()
	
	
}// class Main
728x90
반응형

댓글