POJ 2262 Goldbach's Conjecture [暴力]


题意:

歌德巴赫猜想是正确的,所以我连找不到的情况都没输出。

思路:

觉得这数据量有点大。刚开始觉得想了一些算法时间复杂度上过不去。

无奈看discuss。发现纯暴力直接判断素数可以过。

不知道这题数据是什么思想感情。

#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<vector>
#include<queue>
#include<cmath>
#define Max(a,b) ((a)>(b)?(a):(b))
#define Min(a,b) ((a)<(b)?(a):(b))
#define Abs(a) ((a)>0?(a):(-(a)))
#define llong long long int
using namespace std;
const int N=10000;
const int inf=(1<<30);
int n,m;
bool IsPrime(int a)
{
	for(int i=2;i<=sqrt((double)a);i++)
	{
		if(0==a%i)
		  return false;
	}
	return true;
}
int main()
{
	int num;
	while(scanf("%d",&num),num)
	{
		for(int i=3;i<=num/2;i+=2)
		{
			if(IsPrime(i)&&IsPrime(num-i))
			{
				printf("%d = %d + %d\n",num,i,num-i);
				break;
			}
		}
	}
	return 0;
}

你可能感兴趣的:(POJ 2262 Goldbach's Conjecture [暴力])