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

(模板)线性筛素数

时间:2019-10-16 19:50:01      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:name   namespace   long   not   线性   int   pac   重复   线性筛   

—————————————————————————————————————————————————— —————————————————————前排护眼——————————————————————— ——————————————————————————————————————————————————

#include<bits/stdc++.h>
using namespace std;    
const long N = 10000050;   
long prime[N] = {0};    //记录质数
long num_prime = 0;     //表示质数数量
int isNotPrime[N] = {1, 1};    //记录n是否为质数  
int main()    
{     
         for(long i = 2 ; i < N ; i ++){
                       
        if(! isNotPrime[i]){        // i为质数,则记录
             prime[num_prime ++]=i;
        }
        
        
        for(long j = 0 ; j < num_prime && i * prime[j] <  N ; j ++){    // 质数*i为合数,记录
                  
                isNotPrime[i * prime[j]] = 1;  
                  
              if( !(i % prime[j] ) )  //防止重复筛选       
                break;           
        }  
              
    }        
}

(模板)线性筛素数

标签:name   namespace   long   not   线性   int   pac   重复   线性筛   

原文地址:https://www.cnblogs.com/xiaozezz/p/11687612.html

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