C++搜索与回溯算法之素数环问题

素数环问题:从1n(n<=10000)这n个数摆成一个环,要求相邻的任意两个数的和是一个素数。

代码如下:

#include
#include
int n;
int num[10001];   //存储数据
bool mark[10001]; //判断该数是否被标记过
bool check(int x,int y)    //判断是否满足"素数环"条件
{
	int k=2,i=x+y;
	while(k<=sqrt(i)&&i%k!=0) k++;
	if(k>sqrt(i)) return true;
	return false;
}
void print()   //输出函数
{
	for(int i=1;i

 

你可能感兴趣的:(深度优先搜索,C++学习日志,搜索算法刷题集锦)