#include<cstdio>
#include<algorithm>
using namespace std;
const int N=2e4;
int prime[N+10],p=0;
bool iscomp[N+10];
void primetable()
{
for(int i=2;i<=N;i++)
{
if(!iscomp[i])prime[p++]=i;
for(int j=0;j<p&&i*prime[j]<=N;j++)
{
iscomp[i*prime[j]]=1;
if(i%prime[j]==0)break;
}
}
}
int main()
{
int n;
scanf("%d",&n);
primetable();
for(int i=0;i<p;i++)
for(int j=0;j<p;j++)
{
int a=prime[i],b=prime[j],c=n-prime[i]-prime[j];
if(c<b)break;
if(!iscomp[c])
{
printf("%d %d %d\n",a,b,c);
return 0;
}
}
}
【题解】洛谷P1579哥德巴赫猜想(升级版) 线性筛

最新推荐文章于 2024-11-11 13:17:03 发布
