我还以为得用埃式筛法。。。
2023-12-16 16:36:44
发布于:北京
11阅读
0回复
0点赞
#include<iostream>
#include<stdio.h>
using namespace std;
typedef long long ll;
const ll MAXN=3000000;
bool pm[MAXN];
void init(){
for(ll i=2;i<=MAXN;i++) if(!pm[i]) for(ll j=i*i;j<=MAXN;j+=i) pm[j]=true;
return;
}
int main(){
ll n;
init();
while(cin>>n){
if(n==0) break;
if(n<=4||n%2==1) cout<<"Goldbach's conjecture is wrong.\n";
else{
for(ll i=2;i*2<=n;i++){
if((!pm[i])&&(!pm[n-i])){
printf("%d = %d + %d\n",n,i,n-i);
break;
}
}
}
}
return 0;
}
这里空空如也
有帮助,赞一个