P1304 哥德巴赫猜想
作者:
别期待太多
,
2024-11-26 21:04:22
,
所有人可见
,
阅读 4
#include<iostream>
#include<cstdio>
using namespace std;
const int N = 10010;
int prime[N], cnt;
bool sta[N];
int n;
//枚举优化、线性筛
void get_prime(int n)
{
for(int i = 2; i <= n; i ++)
{
if(sta[i] == false)
prime[cnt ++] = i;
for(int j = 0; prime[j] <= n/i; j ++)
{
sta[prime[j]*i] = true;
if(i % prime[j] == 0)
break;
}
}
}
int main()
{
scanf("%d", &n);
get_prime(n);
for(int i = 4; i <= n; i += 2)
{
for(int j = 0; prime[j] < i; j ++)
{
if(sta[i-prime[j]] == false)
{
printf("%d=%d+%d\n", i,prime[j],i-prime[j]);
break;
}
}
}
return 0;
}