线性筛法

模板

 1 bool vis[MAXN];
 2 int prime[MAXN/10];
 3 
 4 void Prime(){
 5     int top=0;
 6     for (int i=2; i<MAXN; i++){
 7         if (!vis[i]){
 8             prime[top++]=i;
 9         }
10         for(int j=0; prime[j]*i<MAXN; j++){
11             vis[prime[j]*i]=1;
12             if(i%prime[j]==0){///遇到最小素因数退出循环
13                 break;
14             }
15         }
16     }
17 }
原文地址:https://www.cnblogs.com/yZiii/p/7285842.html