哥德巴赫猜想

哥德巴赫猜想

暂无测试数据。

哥德巴赫猜想

请注意,请不要在本业答题,否则没有成绩.

题目描述

输入一个偶数 \(N\),验证 \(4\sim N\) 所有偶数是否符合哥德巴赫猜想:任一大于 \(2\) 的偶数都可写成两个质数之和。如果一个数不止一种分法,则输出第一个加数相比其他分法最小的方案。例如 \(10\),\(10=3+7=5+5\),则 \(10=5+5\) 是错误答案。

输入格式

第一行输入一个正偶数 \(N\)

输出格式

输出 \(\dfrac{N-2}{2}\) 行。对于第 \(i\) 行:

首先先输出正偶数 \(2i+2\),然后输出等号,再输出加和为 \(2i+2\) 且第一个加数最小的两个质数,以加号隔开。

样例 #1

样例输入 #1

10

样例输出 #1

4=2+2
6=3+3
8=3+5
10=3+7

提示

数据保证,\( 4 \leq N\leq10000\)。

AC code

#include<iostream>
#include<cstdio>
using namespace std;

bool isPrime(int m)
{
    for (int i = 2;i * i <= m;i++)
    {
        if (m % i == 0)
        return false;
    }
    return true;
}

int main()
{
    int n;
    cin >> n;
    for (int i = 4;i <= n;i += 2)
    {
        for (int j = 2;j <= i / 2;j++)
        {
            if(isPrime(j) && isPrime(i - j))
            {
                printf("%d=%d+%d\n",i,j,i - j);
                break;
            }
        }
    }
    return 0;
}

答案仅供参考

信息

ID
1002
难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者