不忘初心,继续前行!祝大家在丁酉鸡年百尺竿头更进一步!
Problem G: 素数对
Description
输入一个正整数n,求有几对素数x,y,满足n=x+y((3,2)和(2,3)视为相同的素数对)。
Input
有多组数据,每行输入一个偶整数n(3<n<32768)。n等于0时,输入结束。
Output
输出相应的答案。
Sample Input
610120
Sample Output
121
水题,直接打表就行了。
#include<cstdio>
#include<cmath>
#include<cstring>
int a[35000];
void f(){
for(int i=2;i<=32768;i++){
for(int j=2*i;j<=32768;j+=i){
a[j]=1;
}
}
}
int main(){
int n;
memset(a,0,sizeof(a));
f();
while(~scanf("%d",&n)&&n){
int cou=0;
for(int i=2;i<=n/2;i++){
if(!a[i]&&!a[n-i])
cou++;
}
printf("%d\n",cou);
}
return 0;}