#include #include #include int func(int n)//判断一个数是不是素数 { for(int i=2;i<n;i++) { if(n%i==0) { return 0; } } return 1; } int main() { int num; while(scanf("%d",&num)!=EOF) { int chazhi = num-1;//设定初始差值为最大 int out1= 1; int out2 = num-1; for(int i=1;i<=num;i++) { if(func(i)&&func(num-i)) { if(abs(num-i-i)<chazhi)//当两个拆分的数都是素数,且两个的差值都小于初始设定差值时,就更新差值,更新输出的差分数 { chazhi = abs(num-i-i); out1 =i; out2 = num-i; } } } printf("%d\n%d\n",out1,out2); } return 0; }