数学
结论 1
若 \(n\) 为奇数,则在 \([1,n]\) 中有奇数个 \(1\) 的数字个数为 \((n+1)/2\);若 \(n\) 为偶数,则 \([1,n-1]\) 中有偶数个 \(1\) 的数字个数为 \(n/2\).
结论 2
结论 3
斐波那契数列求和公式:
结论 4
结论 5
可以用于莫比乌斯反演。
证明:
先将每个质因子分开考虑。
设 \(x,y\) 分别有 \(p^a,p^b\)。显然左边的 \(p\) 的幂指数范围是 \([0,a+b]\) 即 \(a+b-1\) 种。
而对于右边,因为要求 \(i,j\) 互质,只有三种情况:
- \(x,y\) 都没选 \(p\),有 \(1\) 种。
- \(x\) 选了 \(p\),\(y\) 就不能选,有 \(a\) 种。
- \(y\) 选了 \(p\),\(x\) 就不能选,有 \(b\) 种。
所以右边共 \(a+b-1\) 种,与左边相同。
总选择方案显然是每个质因子的选择方案的乘积,所以上式成立。
结论 6
若 \(a\le b\le c\) 一定有 \(a\oplus c\ge \min\{a\oplus b,b\oplus c\}\)。证明就考虑 \(a\oplus c\) 第一位不为零的二进制位,肯定满足 \(a\) 为 \(1\),\(c\) 为 \(0\),那么 \(a\oplus b,b\oplus c\) 中一定存在一个数这一位为零,因为 \(b\) 这一位只能选 \(0/1\).
结论 7
若 \(a\le b\) 一定有 \(b\oplus a\ge b-a\)。事实上 \(\oplus\) 就相当于减法操作去掉借位,然后就可以感性理解啦!
结论 8
考虑证明
所以
考虑 $ \frac{\left \lfloor \frac{a}{b} \right\rfloor}{c}$ 的余数至多为 \(c-1\),所以 \(\frac{r}{c}\) 一定不会造成进位。
数据范围
结论 1
结论 2
\(n\) 以内的质数个数约等于 \(n/\ln(n)\).
"树" 据结构
结论 1
一个区间的 \(\text{lca}\) 就是区间 \(\text{dfs}\) 序最小的点和 \(\text{dfs}\) 最大的点的 \(\text{lca}\).
结论 2
结论 3
关于树的最大匹配:当且仅当子树大小为奇数的点的个数与子树大小为偶数的点的个数相等时存在完全匹配。同样是充要条件的还有:
- 对于每一个子树大小为偶的 \(u\),存在且仅存在一个子树大小为奇的点 \(v\);
- 对于每一个子树大小为奇的 \(v\),其父亲子树大小为偶。
图论
结论 1
若 \(n\) 阶简单无向图 \(G\) 的任意两个节点的度数之和 \(\ge n-1\),则 \(G\) 是连通的。
假设 \(G\) 不是连通的,则 \(G\) 至少有两个连通分支 \(G_1\) 和 \(G_2\),有 \(|G_1|+|G_2| ≤ |G| = n\)。任取 \(G_1\) 中一点 \(v_1\),\(G_2\) 中一点 \(v_2\),则 \(d(v_1)≤|G_1|-1,d(v_2)≤|G_2|-1\),就有 \(d(v_1)+d(v_2) ≤ |G_1|+|G_2|-2 ≤ n-2\),与条件矛盾。
Menger 定理
边形式:对于图中不同的两个顶点 \(x,y\),\(P\) 是从 \(x\) 到 \(y\) 的一些路径的集合,且满足 任意路径的边不交。设 \(f(x,y)=\max |P|\),\(g(x,y)\) 是让 \(x,y\) 不连通最少删去的边。就有
\[f(x,y)=g(x,y) \]
可以用 最大流最小割定理 证明,令边的容量为 \(1\),\(S=x,T=y\)。就比较显然了。
点形式:对于图中不同的两个顶点 \(x,y\),\(P\) 是从 \(x\) 到 \(y\) 的一些路径的集合,且满足任意路径的点不交(除了起点与终点)。设 \(f(x,y)=\max |P|\),\(g(x,y)\) 是让 \(x,y\) 不连通最少删去的点。就有
\[f(x,y)=g(x,y) \]
同理,将点拆成入边和出边,将点不交转化成边不交。
Hall 定理
Part 1:一些概念
- 对于二分图 \(G=\langle V_1,V_2,E \rangle\),不妨设 \(|V_1|\le |V_2|\)。称 \(M\) 为完备匹配当且仅当 \(|M|=|V_1|\);
- 对于点集 \(S\),\(N(S)\) 是 \(S\) 的邻域,即 \(S\) 的所有邻接点的并集;
- 相异性条件。若点集 \(V\) 的每个子集 \(S\) 均满足 \(|S|\le |N(S)|\),则称其满足相异性条件。
Part 2:定理内容 & 证明
若点集 \(V_1\) 满足相异性条件,则 \(G\) 有完备匹配。同时这也是个充要条件。
有完备匹配 $\rightarrow $ \(|S|\le |N(S)|\)
显然,若存在完备匹配 \(M\),那么选取 \(V_1\) 的任意子集 \(S\),都能被 \(N(S)\) 中的点匹配完,所以 \(|S|\le |N(S)|\).
\(|S|\le |N(S)|\) $\rightarrow $ 有完备匹配
令 \(M\) 是最大匹配,则只需证明 \(|M|=|V_1|\)。
把二分图 \(G\) 定向,边方向从 \(V_1\) 到 \(V_2\),然后新增源汇点 \(s,t\)。因此,这个新图的内部点不交的 \((s,t)\) 路径的最大条数为 \(|M|\)。由点形式的 \(\rm Menger\) 定理,令 \(T\) 是删点使得 \(s,t\) 不连通的最小点集,则 \(|M|=f(x,y)=g(x,y)=|T|\).
令 \(T_1\) 是 \(T\) 和 \(V_1\) 的交集,\(T_2\) 同理,则 \(N(V_1-T_1)\) 是 \(T_2\) 的子集(因为 \(V_1-T_1\) 表示没删的点,在 \(V_2\) 的邻接点就必须删掉),再加上 \(|N(S)|\ge |S|\),所以 \(|M|=|T|=|T_1|+|T_2|\ge |T_1|+|N(V_1-T_1)|\ge |T_1|+|V_1-T_1|=|V_1|\).
\(\text{To be continued...}\)