求N以内质数
这里我们写一个较高效率筛N以内质数的算法,我们模拟走一遍20以内的质数来讲清我们的思路。
这是对20以内质数的直观思路 具体怎么实现我们用代码来表达
#include<iostream>
using namespace std;
const int N=1e8;
bool st[N];
int primes[N];
int cnt;
void get_primes(int n)
{
for(int i=2;i<=n;i++)
{
if(!st[i])
{
primes[cnt++]=i;
}
for(int j=0;primes[j]*i<=n;j++)
{
st[primes[j]*i]=true;
if(i%primes[j]==0)break;
}
}
}
int main()
{
int n;
cin>>n;
get_primes(n);
}