AC Code:
_Bool prime[20000];n,a,b,i,j;
main(){
memset(prime,1,sizeof prime);
for(i=2;i<20000;++i){
for(j=2;j*j<=i;++j)if(!(i%j))prime[i]=0;
}
scanf("%d",&n);
for(i=2;i<20000;++i)
for(j=i;j<20000;++j)
{printf("%d %d %d",i,j,n-i-j),exit(0);}
}
if((i+j<n)&&prime[i]&&prime[j]&&prime[n-i-j])
这句话中&&改为&后则只得90分,如果再进一步去掉(i+j<n)的条件,则只得30分,所以改成按位与为什么不对