我写过的最优化的求素数表的算法
#define NUM 1000000 #define N NUM/2 bool prime[N]; void prim(void) { int i,j,len; len=(int)sqrt(NUM); memset(prime,1,N); for(i=0;2*i+3<len;i++) if(prime[i]) for(j=3*i+3;j<N;j+=2*i+3) prime[j]=0; //输出素数表 for(i=0;i<N;i++) if(prime[i]) cout<<2*i+3<<"/t"; }
posted on 2009-09-06 19:15 草头菜 阅读(120) 评论(0) 收藏 举报
博客园 © 2004-2026 浙公网安备 33010602011771号 浙ICP备2021040463号-3