欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

POJ 2262 Goldbach‘s Conjecture(水题)

程序员文章站 2022-07-14 09:46:00
...

POJ 2262 Goldbach‘s Conjecture(水题)

输入一个不小于 6 的合数 n ,把它分解成两个质数的和,如果有多个,输出相差最大的一组 

const int N=1e6+5;
 
    int n,m,t;
    int i,j,k;
    int prime[N],num;
    bool vis[N];

void init()
{
    for(i=2;i<N;i++){
        if(!vis[i]){
            prime[++num]=i;
            for(j=2;i*j<N;j++){
                vis[i*j]=1;
            }
        }
    }
}
int main()
{
    //IOS;
    init();
    while(sd(n)!=EOF){
        if(!n) break;
        for(i=2;i<=n/2;i++){
            if(vis[i]==0 && vis[n-i]==0)
            { printf("%d = %d + %d\n",n,i,n-i); break; }
        }
    }
    // PAUSE;
    return 0;
}

 

相关标签: # 数论 POJ