随笔分类 -  笔记

摘要:已知两个数组a,b,求一个数组c,满足ci=j+ki(MOD K)ajbk(MOD M)。这里我们把这个东西称为下标模意义下的多项式乘法。那么这个东西怎么做呢? **先说结论:**如果MOD M意义下存在K次单位根,那么把平时用NTT做多项式乘法时的 阅读全文
posted @ 2022-12-18 11:51 LegendStane 阅读(133) 评论(1) 推荐(1) 编辑
摘要:求最小生成树有两种广为人知的方法,Kruskal和Prim。但是在某些特殊的情况下,比如边特别多但是边权满足一些特殊的性质,这时需要用到Boruvka算法。 Boruvka的算法流程如下:一开始没加任何边的情况下,每个点都是一个独立的连通块。每一轮,对每个连通块找出连接它和另一个连通块的权值最小的边 阅读全文
posted @ 2022-11-09 11:12 LegendStane 阅读(598) 评论(0) 推荐(0) 编辑
摘要:长链剖分也是一种树上的链剖分的方法。与重链剖分不同,长链剖分对于树上的每个点,取子树深度最大的儿子,向它连重边,其他的儿子向它连轻边。容易发现一个点所在的重链的长度至少为它子树的深度。 利用这个性质可以O(nlogn)预处理,O(1)求树上任意节点的k级祖先。比如当前要询问点x的k级祖先(k 阅读全文
posted @ 2022-10-27 17:51 LegendStane 阅读(332) 评论(0) 推荐(0) 编辑
摘要:几年前整理的东西,要不就发到网上吧 不过现在这些东西里面也有很多考得比以前少了 卡特兰数 f(i)=i=0n1f(i)f(ni1) 其中f(0)=1 f(n)=一个凸n边形用不相交的对角线划分成三角形的方法种数。 证明:对于一条边,在另外的 阅读全文
posted @ 2022-09-17 09:28 LegendStane 阅读(118) 评论(0) 推荐(0) 编辑
摘要:兰道定理的内容: 一个竞赛图强连通的充要条件是:把它的所有顶点按照入度d从小到大排序,对于任意k[0,n1]都不满足i=0kdi=(k+12)。 兰道定理的证明: 引理: 一个竞赛图强连通的充要条件是对于任意SV阅读全文
posted @ 2022-08-31 11:23 LegendStane 阅读(1184) 评论(1) 推荐(1) 编辑
摘要:我们现在要求1~n在mod m意义下的逆元(n<m,m为素数)。 对于一个[1,n]中的数i,我们令k=mi,r=m mod i 然后ki+r0(mod m) 两边同时乘上i1r1,得到$kr^{ 阅读全文
posted @ 2022-08-22 21:49 LegendStane 阅读(119) 评论(0) 推荐(0) 编辑
摘要:假设现在有2个矩阵a和b,分别是n行m列和x行y列,现在你要计算它们的二维卷积,也就是求出矩阵s满足: si,j=ii,jjai,jbii,jj 先把两个矩阵的行数都扩展到不小于n+x的最小2的次幂数,列数同理,这个跟普通FFT 阅读全文
posted @ 2022-08-22 14:30 LegendStane 阅读(508) 评论(0) 推荐(0) 编辑
摘要:欧拉定理的内容: 当a>φ(m)时,xax(a mod φ(m))+φ(m) (mod m)。 当xm互质时,xφ(m)1,很多地方讲欧拉定理的时候只有这一条,实际上上面那一 阅读全文
posted @ 2022-08-09 21:33 LegendStane 阅读(118) 评论(0) 推荐(0) 编辑
摘要:素数的原根的定义:若g0,g1gp1在mod p意义下各不相同,则g是p的一个原根。质数的最小的原根通常很小,所以从2开始枚举每一个正整数,判断其是否为p的原根。 判断的方法:如果g不是p的原根,则存在0i<jp1满足gigj 阅读全文
posted @ 2022-07-08 21:53 LegendStane 阅读(716) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示