筛选素数模板

4人阅读 评论(0) 收藏 举报
分类:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
#define maxn 65000+10
typedef long long ll;
ll prime[maxn+1];
ll isprime[maxn+1];
ll primelen=0;
void sushu(int n)
{
	for(ll i=1;i<=maxn;i++) 
	 isprime[i]=1;
	 isprime[0]=isprime[1]=0;
	 for(ll i=2;i<=maxn;i++)
	 {
	 	if(isprime[i])
	 	{
	 	   prime[primelen++]=i;
			for(ll j=2*i;j<=maxn;j=j+i)
			 isprime[j]=0;	
		}
	 }
}



#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
#define maxn 65000+10
typedef long long ll;
ll prime[maxn+1];
ll isprime[maxn+1];
ll primelen=0;
void sushu(int n)
{ 
memset(prime,0,sizeof(prime));
	 for(ll i=2;i*i<maxn;i++)
	 {
	 	if(!prime[i])
	 	{
	 	   for(ll j=i;j*j<maxn;j++)
			{
				prime[i*j]=1;
			}	
		}
	 }
}

查看评论

Java中的素数筛选

~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~ Examination Problem       质数(prime number)又称素...
  • u013346007
  • u013346007
  • 2016-09-03 10:36:31
  • 826

线性筛选素数。。。。线性哦

上一篇一道题目用到了筛选素数,不过是那个只需要求3400以内的,比较少,无所谓,关键是如果要求1000000以内的,再直接求就不行了,太慢了。 下面给出两个自己用的模版,并解释解释,为何这样能够很快...
  • zhang20072844
  • zhang20072844
  • 2012-06-09 11:26:09
  • 3558

素数筛选法,快速获取素数序列

今天,学习了[素数][6]求取的方法,感觉很棒,拿来分享一下。首先,对比一下两种方法—普通求取素数的方法和基于筛选法的素数求取方法。...
  • qq_34739984
  • qq_34739984
  • 2016-11-01 19:57:38
  • 2311

三种素数筛选法详解 (转)

转自:http://tr0217.blog.163.com/blog/static/3606648020099302135503/ 第一种:剔除2 3 4 5 6 ... ... 的倍数 ...
  • tongyongzh
  • tongyongzh
  • 2011-08-17 00:19:10
  • 14232

C/C++中的素数筛选

~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~ Examination Problem       质数(prime numb...
  • u013346007
  • u013346007
  • 2016-09-03 10:52:56
  • 530

素数筛选法+记录给定范围内素数的个数(高效率)

当一个数不算大的时候,可以用普通的求素数的方法去求,但是如果一个数过大的话,就像让求1-十亿之间素数的个数,普通方法就不行了,这事就需要用到素数筛选法,他的时间复杂度是O(n),尽管不算很好,但是,也...
  • coco_astrids
  • coco_astrids
  • 2016-11-19 08:46:57
  • 1082

C++素数筛选法

const int arrSize=100001; int prime[arrSize]; //保存素数 int primeSize; //限定范围内素数个数 bool mark[arrSize...
  • Akeron
  • Akeron
  • 2017-03-08 22:13:38
  • 1076

数组_例题:用筛选法求1-100之间的素数

# include # define N 100int main(void){ int a[N], b[N]; //定义两个数组 int i, j, count = 0; a[0] = 1; //...
  • u010345869
  • u010345869
  • 2014-04-14 10:58:00
  • 1198

素数筛选法 (求1~n的素数)

具体方法就不阐述了,百度一下就能找到,
  • yzj577
  • yzj577
  • 2014-07-26 18:03:09
  • 5214

快速筛选法求素数表

文中的算法依据本博客中《高效判断素数方法》中的规律和结论。 素数出现规律: 当n≧5时,如果n为素数,那么n mod 6 = 1 或 n mod 6 = 5,即n一定出现在6x(x≥1)两...
  • code_pang
  • code_pang
  • 2012-09-26 21:34:45
  • 6934
    个人资料
    持之以恒
    等级:
    访问量: 1万+
    积分: 1999
    排名: 2万+
    最新评论