大概就是大爱计数酱吧


容斥原理:

\(\left| \bigcup_{i=1}^{n} S_i \right| = \sum_{m=1}^{n} (-1)^{m - 1} \sum_{1 \leq a_1 < a_2 < \cdots < a_m \leq n} \left| \bigcap_{k=1}^{m} S_{a_k} \right|\)

做题记录

P8315

联考考到的。考虑正难则反,将限制改为不是彩色的。枚举子集,直接暴力容斥。对于每一种子集,暴力的把应该相同的边用并查集和在一起,设连通块个数为 \(x\) ,总数则是 \(k^x\)

P5505

隔板法求出至少 \(i\) 个同学没有特产的总可能数,然后二项式反演(其实这里就是退化成了普通容斥)即可。

ABC423F

打abc碰到的题。枚举子集进行容斥,通过神秘组合意义得到:

\[\sum_{F \subseteq E} g(F) \binom{|F|}{M} (-1)^{|F|-M} \]

按公式算即可,记得lcm要开__int128。

QOJ14318

联考考到的,证明我有智力障碍的有力证据。考试的时候坚决认为先用容斥的式子表达一定推不出来,时间复杂度就炸了,于是坐牢了。考虑有 \(k\)\(a_i\) 不符合 \(a_i \neq a_{i+1}\) ,分成了 \(n-k\) 个连通块。考虑两种贡献,一种是只要有一个是偶数个,其他连通块都可以随便选。第二种是所有都是偶数。容斥的式子考虑反过来用二项式反演,于是得到

\[(2^m - 1)^{n - 1} + (1 - 2^m)^{\frac{n}{2}} \]

速报,好消息:从 \(i-2\) 位递推而来,考虑减去两数相等的情况的式子可以过,坏消息:我不会矩阵快速幂。



二项式定理:

\((a + b)^n = \sum_{k=0}^{n} \binom{n}{k} a^{n - k} b^{k}\)

相关的公式可以在 ix35 大手子的博客 2. 二项式系数与容斥原理 一栏中找到。

二项式反演:

形式一: \(g_n\) 表示至多 \(n\) 个/ \(n\) 种的方案数量, \(f_n\) 恰好 \(n\) 个/ \(n\) 种的方案数量

\(g_n = \sum_{i = 0}^{n} \dbinom{n}{i} f_i\iff f_n = \sum_{i = 0}^{n} (-1)^{n-i}\dbinom{n}{i} g_i\)

形式二: \(g_k\) 表示至少 \(k\) 个/ \(k\) 种的方案数量, \(f_k\) 恰好 \(k\) 个/ \(k\) 种的方案数量

\(g_k=\sum_{i=k}^n \dbinom i k f_i \iff f_k=\sum_{i=k}^n (-1)^{i-k} \dbinom i k g_i\)


做题记录

ABC154F:用一个简单的式子表示出答案后,进行对角线求和,上指标求和之后,得到

\[\dbinom{r2+c2+2}{c2+1} - \dbinom{r2+c2+1}{c1} - \dbinom{r1+c2+1}{c2+1} + \dbinom{r1+c1}{c1} \]

O(1) 求解即可(其实不进行上指标求和时间应该也不会超)。

P10596

简单推式子然后二项式反演。

P4859

先排序。令 \(dp_{i,j}\) 表示前 \(i\)\(a\) 中,选了 \(j\) 组满足 \(a>b\) 的方案数。(注意,其他不做要求,这里也不统计)。易知:

\[dp_{i,j}=dp_{i-1,j}+(l_i-j+1) \times dp_{i-1,j-1} \]

\(g_i\) 表示至少有 \(i\) 对满足 \(a>b\) ,则 \(g_i=dp_{n,i} \times (n-i) !\) 。于是可以二项式反演得到恰好 \(i\) 对的答案。



杂记:

2025.9.17

感觉学会了很多东西啊!原因是以前什么都不会。之前以为已经学完了所有noip内容,看来只是学完了普及组内容啊。

会了很多,但是组合数学还是烂的和屎一样。推式子总是感觉精神衰弱了,什么式子都不记得,每天对着公式拉磨,算到一半总算错,如何是好呢。复习完其他版块还是再多做一点吧。

posted @ 2025-09-17 16:36  卢浮宫  阅读(2)  评论(0)    收藏  举报