03 2019 档案
摘要:题目分析: 这道题我是乱搞的,因为他说$01$串是随机的。 那么我们可以猜测能够让LCP变大的地方很少。求出后缀数组之后可能让LCP变大的地方就等价于从大到小往height里动态加点同时维护这个点左右两边的单调栈。 这个事情用线段树模拟就行了。 用暴力跑一下发现果然不大,只有200w,其中很多还是废
阅读全文
摘要:题目分析: 这题出的好! 首先问题肯定是二分图的最大独立集,如果删去某条匹配边之后独立集是否会变大。 跑出最大流之后流满的边就是匹配边。 如果一个匹配边的两个端点在一个强连通分量里,那这条边删掉之后我们就可以找到一个替代方案使得匹配不变小。 具体的,假设这两个点是x,y。因为两者之间连的是匹配边,那
阅读全文
摘要:题目分析: 首先打个暴力求一下$10^9$以内因子最多的数的因子个数,发现只有$1344$个。 由于有$ax+by=k*(a,b)$和2017年noip的结论,所以我们可以发现对于任意多个数$a_1,a_2,a_3,...,a_n$他们能组成的数是$k$倍的最大公约数,$k$任取。我们发现如果$gc
阅读全文
摘要:首先发现对于一个联通块有奇数个黑点,那么总体来说答案无解。这个很容易想,因为对每个边进行操作会同时改变两个点的颜色,异或值不变。 然后一个朴素的想法是写出异或方程进行高斯消元。 可以发现高斯消元的过程实际上就是合并两个点的过程,如果是一棵树的话那么答案一定是2。 对于树上每多的一条边,它在合并点的过
阅读全文
摘要:题目分析: 思路不难想,考虑三个dp状态$f,g,d$。 $g[i]$表示有$i$个点的堆的数量 $d[i]$表示有$i$个点的情况下所有的方案数中点到根的距离和 $f[i]$表示要求的答案。 不难发现$g[i]=i!$,然后$d[i]$就枚举左子树大小,然后把左右子树单独的$d[j]$加起来,最后
阅读全文
摘要:题目分析: 一开始以为是直接用指数型生成函数,后来发现复杂度不对,想了一下容斥的方法。 对于有$i$种颜色恰好出现$s$次的情况,利用容斥原理得到方案数为 $$\binom{m}{i}\frac{P_{is}^{n}}{(s!)^i}(\sum_{j=0}^{m-i}(-1)^j\binom{m-i
阅读全文

浙公网安备 33010602011771号