随笔分类 - dls的数论
摘要:阶 #include<bits/stdc++.h> using namespace std; typedef long long LL; vector<int> pf; LL qmi(LL a, LL b, LL mod){ LL res = 1 % mod; while(b){ if(b&1) r
阅读全文
摘要:扩展欧拉定理 当a和p互质的时候,a^(b%f(p)) = 1 (mod p) 当a和p不互质的时候,a^(b%f(p) + f(p)) = 1 (mod p), 其中需要满足b>=f(p) 一般可以写作a^min(b, b%f(p) + f(p)) (mod p) 题目链接:http://oj.d
阅读全文
摘要:Lucas定理 #include<bits/stdc++.h> using namespace std; typedef long long LL; const int N = 1e6+10; int fac[N], inv[N]; LL p, T; LL qmi(LL a, LL b, LL mo
阅读全文
摘要:积性函数 完全积性函数 常见积性函数 莫比乌斯函数 线性筛求积性函数 迪利克雷卷积 迪利克雷卷积的性质 莫比乌斯反演 互质对数 gcd之和 总结
阅读全文
摘要:小凯的疑惑 两个互质的数a,b,z=ax+by,求不能使用非负数x,y,表示的最大的z是多少 由扩展欧几里得知道ax+by=1都是有解的,但是解的x,y不一定都是非负的 另外通过通项公式我们知道x=x0+kb,y=y0-ka; 他其实就是一条直线,经过数形结合发现, 扩展欧几里得3 1. 要变成最小
阅读全文
摘要:线性筛 p[i]:表示i的最小素因子的是i,pr[]里面放的是素数是哪些 第二层循环,循环pr[j], 当循环到i的最小素因子的时候就会跳出来,每个数也都是在他的最小素因子的地方被筛掉的 #include<bits/stdc++.h> using namespace std; typedef lon
阅读全文
摘要:简介 求解线性同余方程组:x=ai(mod mi) mi之间两两互质,并不是所有的gcd=1,比如6,10,5就不是 则在模mi乘积的范围内的有唯一解 要求两两互质是由于求解的让Mi和mi是互质的 基本上useless,条件比较苛刻 不互质增量法:不断地合并两个方程,最后只剩一个 两个模数不互质,要
阅读全文
摘要:同余 // 常用知识 a==b(mod m) < > m|(a-b) a==b(mod m) 并且 a==b(mod n) --> m|(a-b) n|(a-b) > [n, m]|(a-b) --> a==b(mod [n, m]) (k, m) = d, ka = ka'(mod m) -->
阅读全文
摘要:数论 整除/gcd 一些常见的结论 1-n之间的素数个数:n/lnn 级别的 第n个素数的大小:nlogn级别大小 1-n的倒数和:logn级别 1-n之间素数的倒数和:loglogn级别的 a|c, b|c, (a, b) = 1 --> ab|c, a,b分别是c的一些质因子乘积,且a,b没有相
阅读全文

浙公网安备 33010602011771号