素数的最短距离算法
发布时间
阅读量:
阅读量
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
#define MAX_LENGTH 50000001
bool prime[MAX_LENGTH];
void CreatePrimeTable()
{
int i, j;
memset(prime, true, sizeof(prime)); // 初始化全为1
prime[0] = prime[1] = false; // 0和1不是素数
for (i = 2; i * i < MAX_LENGTH; i++)
{
if (prime[i]) // 如果是素数
{
// 如果i是素数,那么能整除i的肯定不是素数
for (j = i * 2; j < MAX_LENGTH; j += i)
{
prime[j] = false;
}
}
全部评论 (0)
还没有任何评论哟~
