素数筛选法打表模板

来源:互联网 发布:php广告系统 编辑:程序博客网 时间:2024/06/05 15:00

素数筛选法.
例子. 100万内的素数打表

#define ll long longconst int SIZE = 1e6+5; // 一百万以内的素数表int p[80000]; //保存素数int primeSize; //限定范围内素数个数int mark[SIZE]; //用来做标记void prime() {    memset(mark, 0, sizeof(mark));    primeSize = 0;    for (ll i = 2; i < SIZE; i++)     {        if (!mark[i])         {            p[primeSize++] = i;            for (ll j = i * i; j < SIZE; j += i) ++mark[j];         }    }}