题解 | #查找组成一个偶数最接近的两个素数#
查找组成一个偶数最接近的两个素数
https://www.nowcoder.com/practice/f8538f9ae3f1484fb137789dec6eedb9
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); int ss1 = calculate(num); System.out.println(ss1); System.out.println(num - ss1); } //判断数字n是否为素数 private static boolean isPrime(int num) { for (int i = 2; i < num; i++) { if (num % i == 0) { return false; } } return true; } /** * 求组成偶数num最近的素数 * @param num 一个偶数 * @return 最接近的两个素数之一 */ private static int calculate(int num) { int min = Integer.MAX_VALUE; for (int i = 1; i < num; i++) { if (isPrime(i) && isPrime(num - i)) { min = Math.min(min, Math.abs(num - i - i)); } } return (num - min) / 2; } }