题解

黄卓  •  6个月前


#include<bits/stdc++.h>
using namespace std;
bool prime(unsigned long long n)
{
	bool flag = true;
	for (int i = 2; i <= sqrt(n); i++)
    {
        if (n % i == 0)
        {
            flag = false;
            break;
        }
    }
    if (flag && n > 1)
    {
        return true;
    }
    else
    {
        return false;
    }
}
bool even(unsigned long long n)
{
	if(n % 2 == 0)
	{
		return true;
	} 
	return false;
}
int main()
{
	unsigned long long start, finish;
	cin >> start >> finish;
	if(!even(start))
	{
		start += 1;
	}
	for(unsigned long long i = start; i <= finish; i += 2)
	{
		for(unsigned long long j = 2; j <= i / 2; ++j)
		{
			if(prime(j) && prime(i - j))
			{
				cout << i << "=" << j << "+" << i - j << endl;
				break;
			}
		}
	}
	return 0;
}

评论: