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

线性筛

时间:2019-08-28 10:51:02      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:最小   for   lse   amp   初始化   ++   ini   span   线性筛   

const int N=100000+5;
bool prime[N];//prime[i]表示i是不是质数
int p[N],tot;//p[N]用来存质数
void init() {
//初始化为质数
    for(int i=2;i<N;i++) prime[i]=true;
    for(int i=2;i<N;i++) {
//把质素存起来
        if(prime[i])  p[tot++]=i;
        for(int j=0;j<tot&&i*p[j]<N;j++) {
            prime[i*p[j]]=false;
//保证每个合数被它最小的质因数筛去
            if(i%p[j]==0) break;
        }
    }
}

 

线性筛

标签:最小   for   lse   amp   初始化   ++   ini   span   线性筛   

原文地址:https://www.cnblogs.com/wronin/p/11422404.html

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