标签:style blog http color 2014 for 问题 div
一:素数的基本求法:
bool pd(int x) { if(x==1)return false; for(int i=2;i*i<=x;i++) if(x%i==0)return false; return true; }
二 筛选法求素数(简便快捷):可以用事先筛选好的素数来判断一个数是否为素数。
1 int prime[5500],tot; 2 bool isprime[50001]; 3 void init()//先处理出50000以内的质数,可用来筛INT以内的质数 4 { 5 tot = 0; 6 memset(isprime, true, sizeof(isprime)); 7 prime[tot++] = 2; 8 for(int i = 3; i < 50000; i += 2) //素数只能是奇数(虽然有的奇数不满足但能在之前将isprime[i]置为false 9 { 10 if(isprime[i]) { 11 prime[tot++] = i;//素数本身是一定能赋值进去的,不用担心 12 if(i * i < 50000) { 13 for(int j = i + i; j < 50000; j += i) isprime[j] = false; 14 } 15 } 16 } 17 }
三 筛选法求素数的具体应用:
标签:style blog http color 2014 for 问题 div
原文地址:http://www.cnblogs.com/khbcsu/p/3872232.html