![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数论
似火orz
哈哈哈哈哈哈哈哈哈哈
展开
-
扩展欧几里得 逆元 费马小定理 逆元求组合数 逆元求除法同余
扩欧讲解 欧几里得 int gcd(int a,int b) { return b==0?a:gcd(b,a%b); } gcd和extgcd复杂度是相同的。O(log max(a,b)); 形如a*x+b*y=c(a,b均不为0)的方程,a,b,c都是整数,求(x,y)的整数解。 1 判断是否有解 整数二元一次不定方程有解的充分必要是gcd(a,b)|c。如果不能整除则无解。 ...原创 2020-04-08 10:45:01 · 165 阅读 · 0 评论 -
欧拉降幂 模板
#include <stdio.h> #include <string.h> const int N = 1005; int phi[N * 10], vis[N * 10], m, n, a[N]; char M[15]; int pow_mod(int x, int k, int mod) { int now = 1; for (int i = 0; i &l...原创 2019-12-10 16:34:40 · 81 阅读 · 0 评论 -
GCD HDU - 1695 (容斥定理or莫比乌斯反演)
题目 题意:给出a b c d k,找到a <= x <= b ,c <= y <=d 使GCD(x,y)=k. 题中说a=c=1; 这个题可以用容斥定理做(如果还没有学习莫比乌斯反演的话,不过时间复杂度要高很多)。 容斥: k=1时,我们可以看作求互素的数,当k!=1,我们使a b c d k 全部缩小k倍;这样就又转化为求互素的数啦。 此时a=c=1,b=b...原创 2019-11-26 20:05:29 · 153 阅读 · 0 评论 -
F - Co-prime HDU - 4135 (容斥原理)
题目 题意,求 【l ,r】中有多少和n互质的数。 首先暴力会超时(数据范围是10^15) 另外,互质也就是除了1没有别的公共因子,也就是说n的因子或者因子的倍数和n都不互质 这样就转化为了求n的因子的问题了,当然要先找到素因数,继而找所有素因数的倍数 n分解之后是多个素数相乘(忽略1)的形式,这里我用的埃式筛,当然,选择任何有效的算法都可行。 素因数的倍数和n也是不互质,所以要把所有...原创 2019-11-25 15:35:44 · 123 阅读 · 0 评论