09 2018 档案

摘要:题意:求[l,r]区间与n互素的数的个数 思路:容斥原理,求[1,r]区间与n互素的元素个数= r - [1,r]区间与n不互素的元素的个数(与n含有公共因子) 求[l,r]区间与n互素的数的个数=[1,r]区间与n互素的元素个数-[1,l-1]区间与n互素的元素个数 再用到位运算(状压),假设n= 阅读全文
posted @ 2018-09-11 20:31 raincle 阅读(196) 评论(0) 推荐(0)
摘要:phi[i]=从1到i与i互素的数的个数 公式: ,pi为x的质因子,n为x的质因子个数 例如: 12=2*2*3; 12=12*(1-1/2)*(1-1/3) 求单个的: 求很多个的: 特性: 1.若a为质数,phi[a]=a-1; 2.若a为质数,b与a不互素,即b%a==0,gcd(a,b)= 阅读全文
posted @ 2018-09-07 19:30 raincle 阅读(173) 评论(0) 推荐(0)
摘要:三种方式求a关于p的逆元(前提:a,p互质) 费马小定理: inv[a]=a^(p-2)(mod p) 扩展欧几里得: ax+by=1; 若a,b互质,有解 x就是a关于b的逆元,y就是b关于a的逆元 前两种适用于求单个逆元 这一种适用于求0-maxn个数关于p(同一个p)的逆元 当p是个质数的时候 阅读全文
posted @ 2018-09-06 20:44 raincle 阅读(329) 评论(0) 推荐(0)
摘要:求最大公约数gcd,辗转相除法 最小公倍数lcm=a/gcd(a,b)*b (避免溢出) 一些公式: gcd(ka,kb)=k*gcd(a,b); gcd(s/a,s/b)=s/gcd(a,b); gcd(x^a-1,x^b-1)=x^gcd(a,b)-1; gcd(f[a],f[b])=f[gcd 阅读全文
posted @ 2018-09-06 20:33 raincle 阅读(185) 评论(0) 推荐(0)
摘要:题意:就是一个矩阵快速幂的题目,难点在于p/n向下取整 解法一: 构造递推式: 这种构造方式很好想,可以发现递推矩阵T与一般矩阵不同之处在于p/n的值一直在变 所以我们不能直接用矩阵快速幂把递推矩阵乘上n-2次 所以此时用到分段的思想: 在某一个区间内,p/i的值是相同的 经过计算这个区间是(i,p 阅读全文
posted @ 2018-09-04 18:05 raincle 阅读(236) 评论(0) 推荐(0)
摘要:快速幂取模(位运算加速) 快速乘法取模 快速乘法+快速幂(当所给数非常大的时候用) 矩阵快速幂 难处在于求解递推式 阅读全文
posted @ 2018-09-03 17:13 raincle 阅读(132) 评论(0) 推荐(0)