上一页 1 ··· 9 10 11 12 13 14 15 下一页
摘要: 乘法逆元总结: 算单个数的逆元: 递推式: inv[i]=(mod-mod/i)*inv[mod%i]%mod; 这种做法适用于递推。 当模数为质数时: inv[i]=qmi(i,mod-2); 不是质数时,我们运用 \(exgcd\) 来计算。 阶乘乘积: inv[n]=qmi(mul[n],mo 阅读全文
posted @ 2021-07-18 09:13 Evitagen 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 拓展中国剩余定理 引入 我们知道中国剩余定理的约束条件:模数必须全都互质。 那么当模数不互质的情况该怎么办呢?这时候就要用到 拓展中国剩余定理 实现 形如: \(x\equiv a\pmod b\) 我们可以转换成: \(ax+b=x\) 这样叠加起来,就有: \(a_1x_1+b_1=x\\ a_ 阅读全文
posted @ 2021-07-16 16:23 Evitagen 阅读(96) 评论(0) 推荐(3) 编辑
摘要: 二维/三维偏序 定义: 形如 \(x_i<x_j\) 且 \(y_i<y_j\) 之类的约束条件,我们可以称为二维偏序。 逆序对就是一个非常经典的二位偏序。 解决: 如果按照暴力想法,我们 \(O(n^2)\) 的时间枚举 \(i,j\) ,这样太慢了。 处理第 \(i\) 位时,我们已经处理过 \ 阅读全文
posted @ 2021-07-15 15:58 Evitagen 阅读(1587) 评论(1) 推荐(7) 编辑
摘要: \(Tarjan\) 定义: 强连通:指图中任意两个节点连通 强连通分量:极大的强连通子图 割点:去掉这个点后增加强连通子图的个数(就是连接两个强连通分量的点) 作用: 求强连通分量(求环): 我们发现,每个图上的环都被缩成了一个点,这些点集即组成了环,因此记录这个点集即可找到环 求割点: 割点在代 阅读全文
posted @ 2021-07-12 18:50 Evitagen 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 矩阵树定理 拉普拉斯矩阵: 定义: 设无向图有 \(n\) 个节点,拉普拉斯矩阵 \(L\) 是一个 \(n*n\) 的矩阵。 \(L_{i,i}\) 的值为节点 \(i\) 的度数。 \(L_{i,j}\) 的值为节点 \(i\) 和节点 \(j\) 之间相连的边数的相反数。 例如下图: 这个图各 阅读全文
posted @ 2021-07-02 09:34 Evitagen 阅读(415) 评论(0) 推荐(2) 编辑
摘要: 长链剖分 定义: 长链剖分主要用于解决两点之间链的问题。 实现: 思路与重链剖分相同,但是选择重儿子时选择子树深度最大的儿子。 代码: void dfs1(int x,int fa){ d[x]=d[fa]+1; f[x]=fa; for(int i=head[x];i;i=nxt[i]){ int 阅读全文
posted @ 2021-07-01 10:27 Evitagen 阅读(256) 评论(0) 推荐(1) 编辑
摘要: 树链剖分 引入: 如果我们需要建立一棵树,而且需要维护树上路径的信息,较为方便的做法就是树链剖分。 形式: 树剖主要有两种形式: 重链剖分:利用 \(size\) 定义重节点。 长链剖分:利用 \(depth\) 定义重节点。 一般来说,树链剖分指的是重链剖分。本篇博客主要讲的也是重链剖分。 作用: 阅读全文
posted @ 2021-06-30 21:03 Evitagen 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 0629今日知识点总结: T1: 看时间复杂度,我们需要一定的优化。 我们当访问到一个访问过的节点,那么其子树一定被变成 \(0\),因此,我们可以直接返回。 此外,这里还有一点隐藏的数据结构特点: 对于结构体存邻接表和单独数组存邻接表和vector存时间复杂度不同。 这里记住 开 \(O^2\) 阅读全文
posted @ 2021-06-29 19:26 Evitagen 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 二项式反演 引入: 形式与多步容斥相似,公式与多步容斥类似,多步容斥公式为: \(|A_1\cup A_2\cup...\cup A_n|=\sum\limits_{1\le i\le n}|A_i|-\sum\limits_{1\le i<j\le n}|A_i\cap A_j|+...+(-1) 阅读全文
posted @ 2021-06-21 18:59 Evitagen 阅读(602) 评论(1) 推荐(2) 编辑
摘要: 20210620总结 T1: 题意: 一共有 \(n\) 个数,这些数可以组成 \(2^n-1\) 个组合,在全部组合中,我们在其中挑选不超过 \(m\) 个数,问总共有多少种组合。 思路: 这个题一开始是枚举组合的情况,但是这样有点难算,我们因此转换思路,枚举数字。 例如 \(A,B,C\) 我们 阅读全文
posted @ 2021-06-20 20:05 Evitagen 阅读(59) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13 14 15 下一页