Goldbach's Conjecture POJ - 2262 线性欧拉筛水题 哥德巴赫猜想
Posted tttttttttrx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Goldbach's Conjecture POJ - 2262 线性欧拉筛水题 哥德巴赫猜想相关的知识,希望对你有一定的参考价值。
题意 哥德巴赫猜想:任一大于2的数都可以分为两个质数之和
给一个n 分成两个质数之和
线行筛打表即可 可以拿一个数组当桶标记一下a[i] i这个数是不是素数 在线性筛后面加个装桶循环即可
#include<cstdio> #include<cstring> using namespace std; bool Is_Primes[1000005]; int Primes[1000005]; int cnt; void Prime(int n){ cnt=0; memset(Is_Primes,0,sizeof(Is_Primes)); for(int i=2;i<=n;i++){ if(!Is_Primes[i]) Primes[cnt++]=i; for(int j=0;j<cnt&&i*Primes[j]<=n;j++){ Is_Primes[Primes[j]*i]=1; if(i%Primes[j]==0)break; } } memset(Is_Primes,0,sizeof(Is_Primes)); for(int i=0;i<cnt;i++){ Is_Primes[Primes[i]]=1; } } int main(){ int n; Prime(1000003); while(scanf("%d",&n)==1&&n){ int temp=0; for(int i=0;i<cnt&&Primes[i]<n;i++){ // printf("%d ",i); if(Is_Primes[n-Primes[i]]==1){ printf("%d = %d + %d ",n,Primes[i],n-Primes[i]); break; } } } return 0; }
以上是关于Goldbach's Conjecture POJ - 2262 线性欧拉筛水题 哥德巴赫猜想的主要内容,如果未能解决你的问题,请参考以下文章
poj2262 Goldbach's Conjecture——筛素数
poj 2262 Goldbach's Conjecture——筛质数(水!)
Goldbach's Conjecture POJ - 2262 线性欧拉筛水题 哥德巴赫猜想
[POJ2262] Goldbach’s Conjecture