POJ 2262 Goldbach's Conjecture 简单的素数

来源:互联网 发布:java date 加减 编辑:程序博客网 时间:2024/05/18 15:06

就是给出一个数 然后让你验证哥德巴赫猜想 输出小的那个素数最小的解

代码:

#include<cmath>#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;int p[1000010],n,a[200010],cnt;void get_prime(){p[1]=1;for(int i=2;i<=1000;i++)if(!p[i])for(int j=i*2;j<=1000000;j=j+i)p[j]=1;for(int i=2;i<=1000000;i++)if(!p[i])a[++cnt]=i;}int main(){get_prime();while(scanf("%d",&n)==1&&n){for(int i=1;a[i]<=n/2;i++)if(!p[n-a[i]]){printf("%d = %d + %d\n",n,a[i],n-a[i]);break;}}return 0;}


0 0
原创粉丝点击