分拆素数和
// 分拆素数和 #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; }