素数打表模板

转载 2018年04月16日 19:04:43

这个打表的效率貌似很高,据说几乎到了线性时间(并不知道真假)!!

bool visit[10100000];  
int prime[10000000];  
  
  
void init_prim()  
{  
    memset(visit, true, sizeof(visit));  
    int num = 0;  
    for (int i = 2; i <= n; ++i)  
    {  
        if (visit[i] == true)  
        {  
            num++;  
            prime[num] = i;  
        }  
        for (int j = 1; ((j <= num) && (i * prime[j] <= n));  ++j)  
        {  
            visit[i * prime[j]] = false;  
            if (i % prime[j] == 0) break; //点睛之笔  
        }  
    }  
}  


WordPress博客模板系统开发

-
  • 1970年01月01日 08:00

高效素数打表

大家所知的素数打表时间复杂度几乎都是n2。 就是这种: void init_prime() { int i, j; for(i = 2;i ...
  • niushuai666
  • niushuai666
  • 2011-11-15 15:07:29
  • 12579

ACM模板 素数打表

下面的算法提供快速的素数打表
  • u012278856
  • u012278856
  • 2014-07-16 11:21:24
  • 1309

素数打表法 高效率

素数打表法一直在被人们优化,但是如果你只是想得到一个范围内的所有素数,,这个方法是最快的。不是我推出来的。 #include #include #include using namespace st...
  • u011560507
  • u011560507
  • 2013-08-17 18:41:44
  • 3663

素数打表的四种解法

题目:给出一个正整数n,打印出所有从1~n的素数(即质数);   1.傻瓜解法 复制代码   int i,n; while(scanf("%d",&n)!=EOF) { ...
  • gtuif
  • gtuif
  • 2017-06-26 08:34:32
  • 728

高效素数打表模板

#include #include #include #include #include using namespace std; #define N 100000 int h=0; bool p[N...
  • sinat_35121480
  • sinat_35121480
  • 2016-12-12 10:52:58
  • 320

一般素数打表+高效算法

最近几天脑子越来越来笨了,一个简单的素数环问题纠结一天,没这么搞懂回溯的思路,不过设计到素数的话,突然想总结一下常用的素数打表, 一般用的是下面的代码: #include //素数打表 #includ...
  • u013050857
  • u013050857
  • 2015-01-21 11:45:15
  • 1266

素数打表的快速方法

快速素数打表
  • flyawayl
  • flyawayl
  • 2016-08-02 12:15:34
  • 620

素数打表法(防止超时)

//打表法,用函数的下标表示你要判断的数,里面装的是0or1,0代表不是素数,1反之; int a[70000]; //需要多大的数组自己定义 int sushu() //在主函数要调用...
  • u011459262
  • u011459262
  • 2013-08-17 16:34:48
  • 736

Help Hanzo 素数打表进阶(大数据区间打表)

题意:求a~b之间的素数;(1 难点:数据太大,素数打表会TLE,枚举会MLE; 解题关键:b-a 方法:素数打表小部分(1e6),然后用已打表素数去拓展所给区间的素数,用v[j-a](a #incl...
  • Big_Rui
  • Big_Rui
  • 2017-08-21 15:11:43
  • 197
收藏助手
不良信息举报
您举报文章:素数打表模板
举报原因:
原因补充:

(最多只允许输入30个字)