2보다 큰 짝수는
두 소수의 합으로 나타낼 수 있다
입력되는 짝수는
소수의 합이 몇쌍이 있는지
구하는 문제입니다
import java.util.Scanner;
public class Main {
static boolean num[];
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
num = new boolean[1000001];
num[0] = num[1] = true;
for (int i = 2; i * i <= 1000000; i++) {
if (!num[i]) {
for (int j = i + i; j <= 1000000; j += i) {
num[j] = true;
}
}
}
int T = scan.nextInt();
for (int tc = 0; tc < T; tc++) {
int temp = scan.nextInt();
int ans = 0;
for (int j = 2; j <= temp / 2; j++) {
if (!num[j] && !num[temp - j])
ans++;
}
System.out.println(ans);
}
}
}
'백준 문제풀기 > JAVA' 카테고리의 다른 글
[백준 1075 JAVA 자바] 나누기 (0) | 2023.08.28 |
---|---|
[백준 17252 JAVA 자바] 삼삼한 수 (0) | 2023.08.28 |
[백준 15894 JAVA 자바] 수학은 체육과목 입니다 (0) | 2023.08.27 |
[백준 15720 JAVA 자바] 카우버거 (0) | 2023.08.27 |
[백준 15649 JAVA 자바] N과 M (1) (0) | 2023.08.26 |