2022.11.23

今天被组的题撅爆力(悲)

P5390

交了个暴力爆零力。
后来才发现在暴力前打的正解假了一部分。
我们把每一位拆开来讨论然后排列组合一下就好了。
然后我们会发现我们需要求 \(n\)\(1\) 中选奇数个数的 \(1\) 的方案数。
让我们来干一件事:求一下 选奇数个数的 \(1\) 的方案数 与 选偶数个数的 \(1\) 的方案数 的差。
也就是这个:

\[\large\sum_{i=0}^{n}(-1)^iC_n^i \]

这是偶数减奇数的情况。
然后让我们掏出一个东西。
\(\left\lceil \text{二项式定理} \right\rfloor\)

它长这样:

\[\large(a+b)^n = \sum_{i=0}^n C_n^ia^{n-i}b^{i} \]

那么非常好,我们让 \(a=1,b=-1\),就是上面的差值了。

所以 \(\sum_{i=0}^{n}(-1)^iC_n^i=(1-1)^n=0\)
所以 \(n\)\(1\) 里选奇数个数的 \(1\) 的方案数就是 \(2^{n-1}\)

于是就完事了。


P1269

就硬贪,但一定要从下往上贪。
考虑一种情况:
懒得挂图了,直接挂 Hack 数据吧
6
1 2 1
3 1 1 3 2 4 2
2 2 2 5 1
2 2 2 6 1
1 3 1
1 4 1
4


P1539

就是最普通的状压,属于恶评,不可能是紫的,虽然我调了很久


P1814

我认为这是道搜索好题,它融合了搜索和组合数学,让我复习了一下卡特兰数。


CF432D

Z 函数练习题,我 get 到一个求所有前缀在字符串中出现次数的方法,同时也有了一个判断某子串是否同时是前缀和后缀的小 trick:z[i] + i == len

posted @ 2022-11-23 21:33  Cotsheep  阅读(27)  评论(0编辑  收藏  举报