题解 | #筛选法求素数#
筛选法求素数
https://www.nowcoder.com/practice/06c3dcc303654ef4926654023eca1e5a
#include <iostream>
using namespace std;
int main() {
int n;
int round=1;
int sum=0;
int a[999]={0};
while(cin>>n){
for (int i=0;i<n-1;i++)
{
a[i]=i+2;
}
for(int j=2;j<=n;j++){
for (int k=0;k<n-1;k++)
{
if(a[k+round]%j==0 && a[k+round]!=0){
a[k+round]=0;
sum++;
}
}
round++;
}
for (int i=0;i<n-1;i++)
{
if (a[i]!=0)
{
cout<<a[i]<<" ";
}
}
cout<<endl;
cout<<sum<<endl;
}
}
