素数
常用素数:1e8+7 1e8+37 19260817
线性筛
1 int prime[N]; 2 bool flag[N]; 3 void getprime() 4 { 5 flag[1]=1;//1不是素数 6 for(ll i=2;i<=n;++i)//n为素数的范围 7 { 8 if(flag[i]==0)prime[++prime[0]]=i; 9 for(ll j=1;j<=prime[0]&&i*prime[j]<=n;++j) 10 { 11 flag[i*prime[j]]=1; 12 if(i%prime[j]==0)break; 13 } 14 } 15 }
判断素数
1 for(int i=2;i<=sqrt(n);i++)//n为要判断的素数 2 { 3 if(n%i==0) 4 return flase;//不是素数 5 else 6 return true;//是素数 7 }