题解 | #筛选法求素数#
筛选法求素数
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; } }