题解 | #查找组成一个偶数最接近的两个素数#
查找组成一个偶数最接近的两个素数
https://www.nowcoder.com/practice/f8538f9ae3f1484fb137789dec6eedb9
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextInt()) { // 注意 while 处理多个 case
int a = in.nextInt();
int min = getMinNum(a);
System.out.println((a-min)/2);
System.out.println((a+min)/2);
}
}
//取 两个素数的最小差值
private static int getMinNum(int n){
int min = 1000;
for(int i=1;i<=n/2;i++){
if(isPrime(i) && isPrime(n-i)){
if(n-i-i<min){
min = n-i-i;
}
}
}
return min;
}
//判断一个数是否为素数
private static boolean isPrime(int n){
Boolean b = true;
for(int i=3;i<n;i++){
if(n%i==0){
b = false;
}
}
return b;
}
}