摘要:
退役力,悲。 阅读全文
摘要:
用栈思考稍显困难,不难发现我们可以建出一棵树出来,相当于对树进行二染色,对从根到任何点的路径上颜色数有要求,然后求愤怒值总和。 考虑一个简单的 DP,我们设 $f_{u,p,x}$ 表示考虑点 $u$ 内的子树,点 $u$ 到根的路径上有 $p$ 个 R,子树内一共有 $x$ 个 R,每次合并。在根 阅读全文
摘要:
考虑操作一共可以根据 $0,1$ 个数分成四类: - $(3,0)$,这个一定很优,因此我们可以先把序列消成连续的 $0$ 最多有 $2$ 个。 - $(0,3)$,这个一定没用,完全可以不消留到最后。 - $(1,2)$ 和 $(2,1)$,感受一下,我们发现这两类其实都是等价于消掉一组 $01$ 阅读全文
摘要:
这种题目首先我们可以想一个比较蠢的 $n^2$ DP,然后观察一些性质来优化它。 那很显然我们可以设 $f_{i,j}$ 表示前 $j$ 个数选了 $i$ 个,有 $$ f_{i,j}=\max(f_{i,j-1},f_{i-1,j-1}+a_j\cdot i) $$ 写个暴力,先猜了一手凸性发现错 阅读全文
摘要:
看错题以为操作一删恰好 $2$ 个卡了好久=_=。~~虽然看对之后还是不会做。~~~ 这种神秘的条件让你计数,要么发挥人类智慧找神秘充要条件之类的,要么直接设计判断合法的自动机然后 dp 套 dp。后者稍微靠谱一些,所以我先想的后面的。 一个简单的人类观察是操作二不会重复进行,否则我们换成一。 另一 阅读全文
摘要:
把每个 $v_i$ 当成 $v_i$ 个 $x_i$,对这 $n=\sum v_i$ 所有多项式分别做 FWT,我们的答案相当于是从中选 $m$ 个乘起来,对所有这样的情况加和,再 IFWT。 考虑到这样的多项式做 FWT 之后每项都是 $\pm1$。我们考虑某一项所有的多项式里一共有 $t$ 个 阅读全文
摘要:
首先我们让恰有 $k$ 位同学被碾压是比较困难的,我们套路地把它转换成钦定某 $k$ 位同学被碾压。 考虑到分数的分配方案数只与多少个人比 B 大/多少个人小于等于 B 相关,而这部分是个定值,所以我们接下来只需要对每门课把所有人分成两个集合就可以了。 我们记钦定某 $k$ 位同学被碾压的方案为 $ 阅读全文
摘要:
对于这类问题,我们有一种比较通用的解法是设定一个贡献的充要条件。我们通常会在若干个都能产生某一贡献 $p$ 的元素 $a_1\dots a_k$ 上定义一种小于关系 $R$,每次只让这些元素中的极小值进行贡献。具体来讲我们可以对每个元素求出它上/下一个比它“小”的元素 $pre_x,suf_x$,那 阅读全文
摘要:
注意到第二问并没有什么意义:我们只在必须改道的地方改道就不会变差。 那我们自然会好奇哪些时候必须改道,这个是比较显然的:对于一个点 $u$,倘若在 $t_0$ 时刻有车往 $v$ 开,$t_1$ 时刻有车往 $w$ 开,并且这两个时刻之间,没有别的开往子树内的列车,那么我们只要在 $(t_0,t_1 阅读全文
摘要:
我们先不考虑 $dep$ 的问题,先来研究有多少种不同的 $lca(i,j)$。 考虑改询问为贡献,计算一个 $l$ 可以成为哪些 $(i,j)$ 的 lca。这个东西可以写成若干个点对对吧,倘若我们忽略掉一共有 $O(n^2)$ 个点对的事实的话,我们的问题就转化成了有若干个被染成某些颜色的区间, 阅读全文