数论
weixin_44508514
这个作者很懒,什么都没留下…
展开
-
卢卡斯定理(模板)
const int MAXN = 1e5 + 10;//MAXN要大于modint f[MAXN];int pow_mod(int a, int n, int mod)//费马小定理,a^(mod-2)%mod(mod是质数){if (n == 0)return 1;int x = pow_mod(a, n / 2, mod);int ans = (long long)x * x %...原创 2019-02-02 17:47:17 · 91 阅读 · 0 评论 -
逆元【模板】
(https://www.cnblogs.com/zzqc/p/7192436.html)的简写方程ax≡1(mod p),的解称为a关于模p的逆,当gcd(a,p)==1(即a,p互质)时,方程有唯一解,否则无解。费马小定理内容:假如p是质数,且gcd(a,p)=1,那么 a(p-1)≡1(mod p)a关于p的逆元就是a^(p-2) % p,直接快速幂处理拓展欧几里得算法ax+b...原创 2019-02-19 14:05:56 · 288 阅读 · 0 评论 -
[模板]拓展中国剩余定理
#define maxn 100//模方程数量int a[maxn], r[maxn];void Init(int k) //初始化函数,有k个等式,读入除数a和余数r{for (int i = 0; i < k; i++) scanf("%d", &a[i]);for (int i = 0; i < k; i++) scanf("%d", &原创 2019-02-18 22:39:40 · 109 阅读 · 0 评论 -
【模板】拓展卢卡斯定理
//拓展卢卡斯定理int pow_mod(int a, int n, int mod)//a^n%mod(a的n次方求余){ if (n == 0) return 1; int x = pow_mod(a, n / 2, mod); int ans = (long long)x * x % mod; if (n % 2) ans = ((long long)ans * a) %...原创 2019-02-20 14:26:26 · 211 阅读 · 0 评论 -
Magical GCD UVA - 1642
紫书上的数论经典题。题意大概是这样的,给一段正整数序列,问gcd(a i,a i+1,…,a j)*(j-i+1)的最大值。其实不能,就是右端点从前往右扫,遍历整个区间,左端点从右端点往左扫,直到起点。数据维护每个gcd,index.反正核心就是相同gcd的删掉,时间复杂度大概就是nlong(ai)/**********************************************...原创 2019-04-14 20:32:40 · 139 阅读 · 0 评论