活动地址: 牛客春招刷题训练营 - 编程打卡活动
#include <stdio.h>
int main(void)
{
char flag;
int i, j, k, num;
for( ; scanf("%d", &num)!=EOF; ){ // 输入
i=num>>1; // 除以二
flag=1;
for(j=2; j*j<=i; j++)//判断是否为素数
if(i%j==0){ flag=0; break; }
if(flag){
if(i%2) { printf("%d\n%d\n", i, i); continue; } // 输出
if(i==2) { printf("2\n2\n"); continue; } // 特殊判断+输出
}
for(i--; i>=2; i--){
flag=1;
for(j=2; j*j<=i; j++)
if(i%j==0){ flag=0; break; } // 还是判断
if(flag){// 是素数
k=num-i;
for(j=2; j*j<=k; j++)
if(k%j==0){ flag=0; break; }
if(flag){
printf("%d\n%d\n", i, k);
break;
}
}
}
}
return 0;
}
活动地址: 牛客春招刷题训练营 - 编程打卡活动