Schwartz-Zippel 引理
随机化算法
-
拉格朗日定理:对于一个 \(n\) 次多项式,其最多有 \(n\) 个根。
-
Schwartz-Zipple 引理:对于一个多元 \(n\) 次多项式,其最多有 \(n\) 组根。
我们可以设计一个算法判定一个多项式是否为 \(0\):选择一个大质数 \(P\),随机选择每个元的取值,判定其结果是否为 \(0\)。
由 Schwartz-Zipple 引理,可知错误率为 \(\dfrac n P\),是一个相当优秀的随机化算法。
二分图匹配
求出邻接矩阵,二分图匹配相当于寻找一个排列 \(p\) 满足 \(\forall i\) 存在边 \((i, p_i)\)。
这是积和式的形式,尝试转化为求行列式,即判定行列式是否为 \(0\)。
根据 Schwartz-Zipple Lemma,给每条边赋一个权值 \(x_{i, j}\) 求行列式即可。
生成树计数
同理。例题
与 FWT 结合
可以与 FWT 结合,此时矩阵中每个数都是一个多项式。
考虑 FWT,最外层枚举 S 以求解最终 IFWT 前集合幂级数的每个元的系数。
内层对矩阵每个位置的 FWT 后对应元的系数求行列式。

浙公网安备 33010602011771号