数论
撒旦即可
研究CV的菜狗
展开
-
P4777(扩展中国剩余定律,模板)
题意:https://www.luogu.org/problemnew/solution/P4777解题思路:关于扩展中国剩余定理推导,看我其他的博客。#include<bits/stdc++.h>#define N 100009#define ll long longusing namespace std;ll a[N],b[N];int n;/*该方程 用于以...原创 2019-04-09 16:51:54 · 274 阅读 · 0 评论 -
中国剩余定律学习
详见博客https://blog.csdn.net/niiick/article/details/80229217上面博客中介绍的是所有mi互质时才成立的情况。但是碰到mi并两两互质怎么办?出现了扩展中国剩余定理(EXCRT)推导原理详见https://www.cnblogs.com/Miracevin/p/9254795.htm从以下推导中我们要注意一些细节:1.a1...原创 2019-04-09 14:52:20 · 132 阅读 · 0 评论 -
P3868(中国剩余定律入门)
以上是中国剩余定律的适用问题(专门用于解线性同余方程)题意描述:见https://www.luogu.org/problemnew/show/P3868解题思路:参考https://www.luogu.org/problemnew/solution/P3868我觉得要注意的地方有...原创 2019-04-09 11:25:54 · 158 阅读 · 0 评论 -
相除求余的两种方法:通用法和求逆元
先介绍一下,求余数的一些基本概念:引用自https://www.cnblogs.com/linyujun/p/5194184.html(a + b) % p = (a%p + b%p) %p (对)(a - b) % p = (a%p - b%p) %p (对)(a * b) % p = (a%p * b%p) %p (对)(a / b) % p =...原创 2019-02-08 20:16:52 · 1892 阅读 · 0 评论 -
HDU1695(莫比乌斯反演,线性筛初始化,模板)
题意:给你 a , b , c , d , k 五个值 (题目说明了 你可以认为 a=c=1) x 属于 [1,b] ,y属于[1,d] 让你求有多少对这样的 (x,y)满足gcd(x,y)==k。给你的时间是 3000 MS。 0 < a <= b <= 100,000, 0 < c <= d <= 100,000, 0 <= k <= 1...原创 2019-04-12 00:44:57 · 148 阅读 · 0 评论 -
莫比乌斯函数学习
莫比乌斯反演 假设f非常容易求得,但是g很难求,那么我们是不是可以通过f来求g呢?可以使用公式:推导详见https://blog.csdn.net/outer_form/article/details/50588307莫比乌斯函数的性质若d=1,则μ(d)=1 若d=p1∗p2∗p3∗p4∗..∗pn (p的次数都是1,且都是互异的质数) 那么μ(...原创 2019-04-11 19:40:58 · 141 阅读 · 0 评论 -
关于整除的一些规则(数论)
摘自https://baike.baidu.com/item/%E6%95%B4%E9%99%A4/2452641?fr=aladdin(1)1与0的特性:[1]1是任何整数的约数,即对于任何整数a,总有1|a.0是任何非零整数的倍数,a≠0,a为整数,则a|0.(2)能被2整除的数的特征若一个整数的末位是0、2、4、6或8,则这个数能被2整除。(3)能被3整除的...转载 2019-03-28 19:55:39 · 1174 阅读 · 0 评论 -
组合数求计算总结(模板)
一.一般粗暴法用普通的组合公式来算当求C(n,m)%MOD时容易超范围,因为这种方法计算有除法,不能边做边MOD.优点:复杂度O(n),缺点只能求n,m极小的情况。#include<bits/stdc++.h>#define ll long longusing namespace std;const ll MOD = 1e9 + 7;ll cal(i...原创 2019-04-11 09:16:03 · 1115 阅读 · 0 评论 -
三种求逆元总结(模板)
逆元定义:方程ax≡1(mod p),的解称为a关于模p的逆,当gcd(a,p)==1(即a,p互质)时,方程有唯一解,否则无解。一.扩展欧几里得求解证明如下:a*x + b*y = 1如果ab互质,才有解这个解的x就是a关于b的逆元y就是b关于a的逆元为什么呢?两边同时求余ba*x % b + b*y % b = 1 % ba*x % b = 1 % b...原创 2019-04-10 22:37:17 · 2087 阅读 · 0 评论 -
HDU1402(FFT求多项式相乘)
N-----为信号f(n)的长度s(n)----为卷积结果序列,长度为len(f(n))+len(g(n))-1以3个元素的信号为例:f(n) = [1 2 3]; g(n) = [2 3 1];s(0) = f(0)g(0-0) + f(1)g(0-1)+f(2)g(0-2)= 1*2 + 2*0 + 3*0 =2s(1) = f(0)g(1-0) + f(1)g(1-...原创 2019-03-10 15:52:07 · 218 阅读 · 0 评论 -
HDU4609(FFT模板,计数应用)
解题思路:http://www.cnblogs.com/kuangbin/archive/2013/07/24/3210565.html这篇博客写的很清楚。第一次练FFT,谈一下我的理解吧。下面是两个数列的离散卷积定义:其实离散卷积里就有丰富的组合意义。上面算式中就代表f序列+g序列之和为n.是不是有去两种长度,最后长度为n的意义。然后如果直接这么算,那复杂为n^2.但是DFT是可以化...原创 2019-03-10 12:59:24 · 303 阅读 · 0 评论 -
HDU6069(区间筛)
解题思路:以前在CF上也遇见过这种题,但不知道这种处理方法的名字。先用埃氏筛法找出1~10^6间的所有质数。然后再用区间筛法,找出所求区间范围内的质因数分解。如果暴力做,会超时。而用区间筛,跑一次也就10*10^5次量级左右的运算量。还不会超时。#include<cstdio>#include<cstring>#include<iostream>...原创 2019-02-13 19:03:21 · 222 阅读 · 0 评论 -
HDU1576(辗转相除法求逆元)
解题思路:(a/b)%m,就要求出b的逆元b1,这样就可以化为(a*b1*b/b)%m=(a*b1)%m=(a%m)*(b1%m)了。但是求你元也是有限制的,因为逆元的推导过程是建立在ax+by=1的基础上的(详见我以前分析逆元的博客)。所以结合扩展欧几里得可知,x,y要想有整数解,gcd(a,b)必须等于1的因数,但由于1的因数只有1,所以gcd(a,b)必须为1。所以a,b互质。所以就...原创 2019-02-13 14:10:07 · 998 阅读 · 0 评论 -
POJ1006(中国剩余定律)
题意:已知(n+d)%23=p; (n+d)%28=e; (n+d)%33=i ,求n 。解题思路:模板题tp=((tp-d)%M+M)%M;讲一下意义吧。(tp-d)%M距离d最近的差,再加上一个M,因为(x=x0+k*M)#include<cstdio>#include<cstring>#include<iostream>#define ...原创 2019-04-09 19:55:34 · 649 阅读 · 0 评论