题目:

哥德巴赫猜想_i++


题解:

质数筛

#include <bits/stdc++.h>
using namespace std;
int pri[1000005];
void primes()
{
for(long long i=1;i<=1e6;i++) pri[i]=1;
pri[1]=0;
for(long long i=2;i<=1e6;i++)
{
if(pri[i])
{
for(int j=2;j*i<=1e6;j++)
{
pri[i*j]=0;
}
}
}
}
int main()
{
long long n;
primes();
while(cin>>n)
{
if(n==0) break;
for(long long i=2;i<=n;i++)
{
if(pri[i]&&pri[n-i])
{
cout<<n<<" = "<<i<<" + "<<n-i<<endl;
break;
}
}
}
return 0;
}