标签:
#include <iostream>#define MAXN 50005using namespace std;bool u[MAXN]; //辅助数组做筛子int su[MAXN]; //素数集合void SieveOfEratosthenes(int n){int i,j,num=0;for(i=2;i<=n;i++){u[i]=true;}for(i=2;i<=n;i++){su[i]=true;}for(i=2;i<=n;i++){if(u[i]){for(j=2;j*i<=n;j++){u[j*i]=false;}}}for(i=2;i<=n;i++){if(u[i]){su[num++]=i;}}}// Testint main(){SieveOfEratosthenes(100);for(int i=0;i<=100;i++){if(su[i]!=0&&su[i]!=1)cout<<su[i]<<endl;}return 0;}
#define MAXN 50005bool u[MAXN]; //辅助数组做筛子int su[MAXN]; //素数集合void SieveofEuler(int n){int i,j,num=0;memset(u,true,sizeof(u));for(i=2;i<=n;i++){if(u[i]){su[num++]=i;}for(j=0;j<=num;j++){if(i*su[j]>n){break;}u[i*su[j]]=false;if(i%su[j]==0){break;}}}}//Testint main(){SieveofEuler(100);for(int i=0;i<=100;i++){if(su[i]!=0)cout<<su[i]<<endl;}return 0;}
标签:
原文地址:http://www.cnblogs.com/xzmds/p/5545900.html