分拆素数和
// 分拆素数和
#include<iostream>
using namespace std;
bool isprime(int n){
if(n<=2) return false;
int i;
for(i=2;i*i<=n;i++){
if(n%i==0) return false;
}
//cout<<n<<" ";//
return true;
}
int main(){
int i,n;
int ans;
int a[10005]={0};
for(i=3;i<=10005;i+=2){
if(isprime(i)) a[i]=1;
}
while(scanf("%d",&n) && n!=0){
ans=0;
for(i=3;i*2<n;i+=2){
if(a[i]){
int m=n-i;
if(a[m]) ans++;
}
}
printf("%d\n",ans);
}
return 0;
}
浙公网安备 33010602011771号