专栏文章

题解:P1304 哥德巴赫猜想

P1304题解参与者 7已保存评论 7

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
7 条
当前快照
1 份
快照标识符
@mip15u4i
此快照首次捕获于
2025/12/03 04:28
3 个月前
此快照最后确认于
2025/12/03 04:28
3 个月前
查看原文

题目分析

基本思路

本题要求给定一个数 NN,验证 4N4 \sim N 之间的偶数是否符合哥德巴赫猜想。对于区间内的每个偶数 mm,我们可以枚举素数 kk,并判断 mkm - k 是否为素数即可。

代码实现

CPP
#include <bits/stdc++.h>
using namespace std;

bool isprime(int n)
{
    if (n == 1)
        return 0;
    if (n == 2)
        return 1;
    for (int i = 2; i <= sqrt(n); i++)
    {
        if (n % i == 0)
            return 0;
    }
    return 1;
}

int n;

int main()
{
    cin >> n;
    for (int i = 4; i <= n; i += 2)
    {
        for (int j = 2; j <= i; j++)
        {
            if (isprime(j))
            {
                if (isprime(i - j))
                {
                    cout << i << "=" << j << "+" << i - j << endl;
                    break;
                }
            }
        }
    }
    return 0;
}

评论

7 条评论,欢迎与作者交流。

正在加载评论...