#include<iostream>
#include<cmath>
#define M 16777220
using namespace std;
bool composite[16777220];
int main()
{
int len=sqrt(M);
for(int i=2;i<=len;i++)
if(composite[i]==0)
for(int j=i*i;j<M;j+=i)
composite[j]=1;
int n;
while(cin>>n)
{ int count=0;
for(int i=2;i<=n/2;i++)
if(composite[n-i]==0&&composite[i]==0) count++;
cout<<count<<endl;
}
}
// 打素数表 只需要 O(n^1.5)的算法
转载于:https://www.cnblogs.com/814jingqi/p/3217974.html