题目分析:把一个偶数,拆成两个不同的质数,有集中拆发,
给一个偶数n<10^4,先把质数找出来放到vis【】,下表为0的为z质数,在查找,水题
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int vis[10100];
memset(vis,0,sizeof(vis));
vis[1]=1;
vis[0]=1;
for(int i=2;i<=10000;i++)
{
for(int j=i*2;j<=10000;j+=i)
{
vis[j]=1;
}
}
/*for(int i=2,j=1;i<=100;i++)
{
j++;
if(vis[i]==0)
printf("%d ",i);
if(j%10==0)
printf("\n");
}*/
int n;
while(scanf("%d",&n)!=EOF && n!=0)
{
int ans=0;
for(int i=2;i<n/2;i++)
{
if(vis[i]==0&&vis[n-i]==0)
{
ans++;
//printf("%d***%d\n",i,n-i);
}
}
printf("%d\n",ans);
}
system("pause");
return 0;
}