题解 | #查找组成一个偶数最接近的两个素数#
查找组成一个偶数最接近的两个素数
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(); // 20, 7+13 //22,观察:从数据散开:19+3;相差16. ; 相差12: 17+5 ;从数据/2散开: 11+11 ,相差0 ;题目要求素数相差最小,分析:从(数据/2)散开 ,然后分别判断素数,满足则为相差最小 int smallV = num / 2; for (int i = 1; i <= smallV; i++) { int bigV = num - smallV; if (isSushu(smallV) && isSushu(bigV)) { System.out.println(smallV); System.out.print(bigV ); break; } --smallV; } } //判断数据是否为素数 static boolean isSushu(int num) { double a=Math.sqrt(num);//求平方根 for (int i = 2; i <= a; i++) { if (num % i == 0) { return false; } } return true; } }