//参考:http://blog.youkuaiyun.com/code_pang/article/details/7880245
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
bool isPrime(int num)
{
if (num == 2 || num == 3)
{
return true;
}
if (num % 6 != 1 && num % 6 != 5)
{
return false;
}
for (int i = 5; i*i <= num; i += 6)
{
if (num % i == 0 || num % (i+2) == 0)
{
return false;
}
}
return true;
}
int nextPrime(int n)
{
bool state=isPrime(n);
while(!state)
{
state=isPrime(++n);
}
return n;
}
int main()
{
cout<< nextPrime(1000)<<endl;
}
高效的nextPrime算法(参考l链接中的高效的素数判断)
最新推荐文章于 2022-02-28 10:52:47 发布