素数筛法

 1 #include<stdio>
 2 #define size 100002
 3 void prime(){
 4     bool a[size]={false};
 5     a[2]=true;
 6     long long i;
 7     for(i=3;i<size;i=i+2)a[i]=true;//将3以上的偶数标记为false
 8     for(i=3;i<size;i++){
 9         if(a[i]){//当i是已知最大的素数
10             long long bei=2;
11             while(bei*i<size){
12                 a[bei*i]=false;//将已知最大的素数的所有倍数都标记为false
13                 bei++;
14             }
15         }
16     }
17 }//至此size-1以内的素数已经筛选完毕

 

posted on 2016-12-24 15:36  一梦一杯酒  阅读(96)  评论(0)    收藏  举报

导航