随笔分类 - 题解
摘要:用栈思考稍显困难,不难发现我们可以建出一棵树出来,相当于对树进行二染色,对从根到任何点的路径上颜色数有要求,然后求愤怒值总和。 考虑一个简单的 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)$ 个点对的事实的话,我们的问题就转化成了有若干个被染成某些颜色的区间,
阅读全文
摘要:对于这种询问区间本质不同的元素个数,我们通常有以下两种方案: - 记 $pre_x$ 为 $x$ 之前最靠后的一个与其本质相同的元素的位置,可以转化为偏序问题。 - 扫描线,每遇到一个元素,就在该位置 $+1$,在上一个本质相同元素处 $-1$,询问区间和。 可以发现,前一种统计的是第一个元素,后一
阅读全文
摘要:> 给定串 $S,T_{1,\cdots,q}$,每次询问是 $S[l_i,r_i]$ 的子串但不是 $T_i$ 的子串的本质不同子串个数。 > > $|S|\le5e5,q\le1e5,\sum|T|\le1e6$。 我们先考虑 $l=1,r=|S|$ 怎么做。 显然我们使用 SAM 可以简单计算
阅读全文
摘要:[link](https://atcoder.jp/contests/mujin-pc-2017/tasks/mujin_pc_2017_d)。 我们注意到这个条件其实不是十分好 dp,通常而言的另一个方向就是尝试寻找条件的等价形式。 我们先考虑较简介的情况:直径 $L$ 上边数为偶。显然 $D=\
阅读全文
摘要:> 给一棵有根树,求距离 $x\to y$ 的链不大于 $d$ 的点的个数。保证 $x$ 是 $y$ 的祖先。 > > $d\le n,q\le2e5$。 冷静分析一波,我们发现假如我们设 $f_{u,d}$ 表示 $u$ 子树内距离不超过 $d$ 的点的个数,我们要算的就是 $\sum_{u\in
阅读全文
摘要:这个题貌似是一类套路题啊,但是我好像没有见过 (;′⌒`)。 我们首先要观察到一个关键性质:每次操作可以看成原序列上一个区间,且任两个区间要么不交要么包含。 我们考虑最外层之间的拼接是简单的,所以不妨只考虑区间 $[l,r]$ 被同一个最外层区间包含的情况。倘若我们记 $dp_{l,r,v_1,v_
阅读全文
摘要:我好像完全没做过啥构造题啊 =_=,这一场有一道就顺手补一下吧。 对于这种神秘的构造题,我们发现样例完全没有意义,它一定不会告诉你真正的构造方案。 一般而言,我们最终给出的构造方案总是更强一点点。对于这道题而言,比方说我们可以加一个限制:对于一个和为正的子区间 $[l,r]$ 而言,$[l,r\do
阅读全文
摘要:我们看到要让我们确定一个顺序,并且 $m\le23$,第一想法肯定是一个状压,精细实现应该可以做到 $O(m2^m)$。 我们先观察一下题目当中给的贡献方式,肯定是要把它拆一拆,拆成每个信号站的贡献的形式。考虑两个信号站 $i,j$,位置在 $p_i,p_j$,倘若 $p_i\le p_j$,我们有
阅读全文
摘要:这个东西大概是可以转化成对于一个图,我们要支持加边,加边之后询问点对 $(u,v)$ 的对数,其中要求 $u<v$ 并且 $u,v$ 可以仅通过编号 $\ge u$ 的点双向到达。显然等价于对于所有的 $u$ 计算它可以通过 $\ge u$ 的点双向到达的点的个数求和。 这个东西看起来像个 Floy
阅读全文
摘要:Algo.1 感性的费用流 我们考虑至少 $a_i$ 是不好做的,考虑转化成最多有 $INF-a_i$ 个人摆烂。 从 $S$ 开始向 $1$ 连 $INF$ 边代表一开始有无穷个人在摆烂,第 $i$ 天要有 $a_i$ 个人干活就是说至多有 $INF-a_i$ 人摆烂,由 $i\rightarro
阅读全文
摘要:一开始看题看成计数这样的区间了,想自闭了 QAQ。 我们先手玩一下看看这样的区间有没有什么性质(记录一下踩的坑): 满足条件的区间有没有可能不多?显然并不是,考虑 $1,1,1\dots$,是 $O(n^2)$ 的。 对于某一类区间(右端点相同/长度相等),有没有可能满足条件的区间成一组组地分布(比
阅读全文
摘要:bzoj2120 每块维护 $pre_i$,代表该颜色上次出现的位置,将其排序。维护 $ans$,代表块答案。$O(\frac{n}{sz}\cdot sz\log sz)=O(n \cdot \log sz)$ 对于询问 $[l,r]$,先把所有块的答案加起来,然后减去 $pre_i \geq l
阅读全文