码迷,mamicode.com
首页 > 其他好文 > 详细

单纯的线性筛素数

时间:2017-09-17 17:30:35      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:font   证明   mes   div   素数   color   logs   ios   地方   

很多地方要用到素数,而能很快的写出代码筛出素数是很不错的我就单独写一个线性筛的代码和证明。

 

#include<iostream>
#incldue<cstdio>
#include<queue>
#include<algorihtm>
#include<cstding>
using namespace std;
#define N 1000009
bool mark[N];//标记合数,
int prime[90000];//储存质数 
void first()
{
    for(int i=2;i<=N;i++)
    {
        if(!mark[i]) prime[++prime[0]]=1;
        
        for(int j=1;j<=prime[0];j++)
        {
            if(i*prime[j]>N)     break;
            mark[i*prime[j]]=1;
            if(i%prime[j]==0)    break;
        }
    }
}
int main()
{
    first();
}
 

 

单纯的线性筛素数

标签:font   证明   mes   div   素数   color   logs   ios   地方   

原文地址:http://www.cnblogs.com/CLGYPYJ/p/7536046.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!