摘要:
网络最大流 前言 网络流是一种神奇的问题,在不同的题中你会发现各种各样的神仙操作。 而且从理论上讲,网络流可以处理所有二分图问题。 二分图和网络流的难度都在于问题建模,一般不会特意去卡算法效率,所以只需要背一两个简单算法的模板就能应付大部分题目了。 单纯只是为了A掉P3376 【模板】网络最大流,并 阅读全文
摘要:
线段树优化建图 起因 一般情况下,连边发生在两个点之间。 但在某些题目中,要在点和区间之间连边。 所以有了线段树优化建图。 原理 从模板题看起。 显然,直接暴力连边的最坏时间复杂度和空间复杂度都为 \(O(n^2)\)。 线段树建图的原理就是建出线段树,区间连边转化为向线段树上的节点连边。 但只是如 阅读全文
摘要:
题目 CF1313D Happy New Year 给定 \(n,m,k\) 和 \(n\) 个区间 \(\left[ l_i,r_i \right]\)。 对于一个长为 \(m\) 的初始值为 \(0\) 的序列 \(a\),在给定的 \(n\) 个区间中选择若干个,使序列 \(a\) 在区间 \ 阅读全文
摘要:
光速幂 黑科技…… 使用情况 快速求 $a^b \bmod m$ 的值。 在幂运算的底数和取余的模数已经确定的情况下可以使用光速幂。 比如 P3747 [六省联考 2017] 相逢是问候 中需要用光速幂,否则很难卡过。 $\color{White}{\text{其实是因为那题才来学光速幂的}}$ 原 阅读全文
摘要:
拓展欧拉定理 内容 对于 \(a,m\in \mathbb{Z}\),有 \(a^b \equiv \begin{cases}a^b&b< \varphi(m) \\a^{\left( b \bmod \varphi(m) \right)+\varphi(m)}&b>\varphi(m)\end{c 阅读全文
摘要:
费马小定理 内容 如果存在一个质数 \(p\),保证 \(\gcd(a,p)=1\),则有 \(a^{p-1} \equiv 1 \pmod{p}\) 也就是说,对于一个质数 \(p\),除了这个质数的倍数之外的所有数 \(a\) 都满足 \(a^{p-1} \equiv 1 \pmod{p}\) 阅读全文
摘要:
P2350 [HAOI2012]外星人 给定一个表示为 \(\prod_{i=1}^m p_i^{q_i}\) 的数 \(N\)。 对于 \(N\),求出 \(x\) 满足 \(\begin{matrix}\underbrace{\varphi(\varphi(\varphi(\varphi(\do 阅读全文
摘要:
欧几里得与拓展欧几里得 欧几里得算法 欧几里得算法是一种快速求出最大公约数的算法。 内容 对于任意的两个整数 \(a,b\),其最大公约数 \(\gcd(a,b) = \gcd(b,a \bmod b)\)。 证明 对于 \(b>a\) 的情况 ,显然成立。 因此只考虑 \(b<a\) 的情况。设 阅读全文
摘要:
SP10628 COT - Count on a tree 给定一棵有 \(n\) 个节点的数,每个点有权值,每次操作输出节点 \(u,v\) 之间的第 \(k\) 小值。 因为有静态区间第 \(k\) 小,所以考虑主席树。 因为题目要求在树上操作,所以考虑树上差分。 建树的过程就是跑一个 dfs, 阅读全文
摘要:
乘法逆元和求法 基本的数论知识,有必要补一发。 开始之前 模运算:取余运算,比如 \(a \bmod b\) 就是 \(a\) 除以 \(b\) 得到的余数。 性质:在加、减、乘、乘方的运算过程中,进行取余运算,不会对结果产生影响。 优先级:取余运算的优先级和乘法、除法的优先级相同,高于加减法的优先 阅读全文