#include #include #include #include using namespace std; int n, m, vis[10000010], prime[5000010], tot; void init() { for (int i = 2; i n) break; vis[t... ...
分类:
其他好文 时间:
2017-11-10 21:55:14
阅读次数:
155
筛法 欧拉函数 逆元 gcd、lcm、exgcd 快速幂 矩阵乘法 排列组合 分解质因数 筛法 1.筛法: 埃式筛 O( nloglogn ) 欧拉筛(线性筛) O ( n ) 2.欧拉函数: φ(n)表示n的欧拉函数,对任意正整数n,欧拉函数是小于或等于n的正整数中与n互质的数的个数。(1也算)( ...
分类:
其他好文 时间:
2017-11-09 19:49:15
阅读次数:
157
#include #include #include #include #include using namespace std; inline int read(){ int num=0,f=1; char c=getchar(); while(!isdigit(c)){if(c=='-') f=... ...
分类:
其他好文 时间:
2017-11-09 14:51:21
阅读次数:
273
P3383 【模板】线性筛素数 P3383 【模板】线性筛素数 P3383 【模板】线性筛素数 题目描述 如题,给定一个范围N,你需要处理M个某数字是否为质数的询问(每个数字均在范围1-N内) 输入输出格式 输入格式: 第一行包含两个正整数N、M,分别表示查询的范围和查询的个数。 接下来M行每行包含 ...
分类:
其他好文 时间:
2017-11-06 15:32:51
阅读次数:
180
【SinGuLaRiTy-1047】 Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 质因数分解 欧拉线性筛素数 筛法求欧拉函数(线性) Miller-Rabbin素数判定法 倍增求快速幂 大数乘法取幂 GCD & LCM 至于LCM=a*b ...
分类:
其他好文 时间:
2017-11-05 17:23:49
阅读次数:
205
分析:首先肯定是要用线性筛把素数全部给筛出来的,然后可以维护一个前缀和数组记录1~i个素数的和,对于每一个询问可以从n到1+k枚举它的右端点,然后利用前缀和统计一个长度为K的区间和,看看是不是满足条件.其实这个可以利用二分来加速,然后就做完了. 二分的时候如果有多个条件需要满足,可以拆分开来讨论l, ...
分类:
其他好文 时间:
2017-11-01 01:04:34
阅读次数:
118
/*** **** 数论模板 1.EXGCD 2.CRT (互质 与 非互质) 3.逆元(线性预处理 欧拉(费小)定理) 4.筛 (线性筛与数论函数 状压筛) 5.大素数计数 (Meisell-Lehmer O2/3 O3/4 ) 6.SG函数 mex方法 7.Gauss消元 8.FFT NTT F ...
分类:
其他好文 时间:
2017-10-28 19:45:34
阅读次数:
169
知识点: 1.整数 1.1埃氏筛法:暴力枚举打表 O(nloglogn) 1.2线性筛法:对于每个数x,遇到x%prime[i]==0的第一个i退出,使得每个合数都被它的最小质因子筛掉 O(n) 例1.1H-合成数poj3292:暴力的一题 筛数打标记O(nlogn) 例1.2求最小质数:平均每O( ...
分类:
其他好文 时间:
2017-10-24 22:42:39
阅读次数:
189
在这里提供三种线性筛的讲解,它们分别是:素数筛,欧拉筛和莫比乌斯筛。 ·筛法正确性的重要理论依据: 上述函数均为积性函数。积性函数的性质为:若f(x)是一个积性函数,那么对于任意素数a,b,满足f(ab)=f(a)*f(b) ·一些可爱的要点(有助于理解筛法原理): ①欧拉筛和莫比乌斯筛是以素数筛为... ...
分类:
其他好文 时间:
2017-10-24 14:13:03
阅读次数:
308