随笔分类 -  题解

1 2 下一页
CF1739F题解
摘要:每个串提供的信息是若干个相邻字符的限制,如果相邻字符连边,最后一定得到一条链,否则这个串不可能被表示出来。 得到的这条链相当于答案的一个子串,如果最后答案包含这个字串,那么就会有 \(c_i\) 的贡献。 由于有多个串,考虑建立AC自动机,把贡献累计到每个串对应的节点上,那么原问题就相当于把最后的排 阅读全文
posted @ 2022-11-24 15:53 cool_tyl 阅读(13) 评论(0) 推荐(0)
CF1667E
摘要:以 \(1\) 为根,那么所有节点 \(i\) 的父亲就是节点编号小于 \(i\) 的任意一个节点。 这时节点 \(i\) 成为根的必要条件是 \(i\) 的子树大小 \(\geq \frac{n+1}{2}\)。 设 \(f_i\) 表示 \(i\) 子树大小 \(\geq \frac{n+1}{ 阅读全文
posted @ 2022-11-24 09:57 cool_tyl 阅读(20) 评论(2) 推荐(1)
CF1699D题解
摘要:考虑 \(dp\),设 \(f_i\) 表示考虑前 \(i\) 个数,且留在最后的数是 \(a_i\) 的最长长度。 转移就考虑枚举上一个位置 \(j\),满足 \(a_j=a_i\) 且 \([j+1,i-1]\) 这个区间的数,能被抵消,于是现在的问题就变成如何判断一个区间的数能否消完,类似摩尔 阅读全文
posted @ 2022-11-21 15:35 cool_tyl 阅读(15) 评论(0) 推荐(0)
CF1693D题解
摘要:很妙的dp题。 首先肯定要想判断一个序列是否合法。 第一篇题解的结论太强了,蒟蒻只能想到dp。 设 \(dp_{i,0}\) 表示 \(a_i\) 作为上升段末尾时,下降段末尾的最大值。 \(dp_{i,1}\) 表示 \(a_i\) 作为下降段末尾时,上升段末尾的最小值。 起点:\(dp_{i,0 阅读全文
posted @ 2022-11-20 20:10 cool_tyl 阅读(14) 评论(0) 推荐(0)
CF449D
摘要:纪念一下少数自己做出来的计数题。 发现全部与起来为 $0$ 的限制比较难处理,因为要求每一位至少有一个 $0$,看到至少,想到容斥。 设 $f(i)$ 为强制 $i$ 状态里的二进制位为 $1$ 的方案数,则 $ans=\sum_i(-1)^{cnt_i}f(i)$。 由于 $f_i$ 要求被选的所 阅读全文
posted @ 2022-11-13 17:26 cool_tyl 阅读(99) 评论(0) 推荐(0)
CF1746D题解
摘要:很好的一道贪心题。 首先对于每条路径,由于要最大化权值,每条路径肯定要延伸到叶子节点。 切入点肯定在 $|c_u-c_v|\leq 1$,也就是说由节点 $i$ 延伸下去的路径要均匀分配给子节点,比如要从 $i$ 延伸 $k$ 条路径下去,肯定每个子节点分配 $\lfloor \frac{k}{so 阅读全文
posted @ 2022-11-13 16:20 cool_tyl 阅读(40) 评论(0) 推荐(0)
CF1735E题解
摘要:钦定 $p_1=0,p_2>0$,不难证明如果有解则一定存在 $p_2>p_1$ 的解。考虑枚举和 $d_{1,1}$ 是相同楼房,则 $p_2$ 对于每一种情况有两种可能的位置:$d_{1,1}+d_{2,i}$ 和 $|d_{1,1}-d_{2,i}|$。考虑判断这 $2n$ 种可能的方案是否合 阅读全文
posted @ 2022-11-11 20:18 cool_tyl 阅读(27) 评论(0) 推荐(0)
CF1706D&E
摘要:D Easy Version 枚举最小值$v$($0\leq v\leq a_1$),然后我们希望最小化最大值。 也就是说,对$\forall i$,我们在满足$\lfloor \frac{a_i}{p_i} \rfloor \geq v$的前提下,使$\lfloor \frac{a_i}{p_i} 阅读全文
posted @ 2022-11-10 23:31 cool_tyl 阅读(40) 评论(0) 推荐(0)
11.8考试题解
该文被密码保护。
posted @ 2022-11-09 17:58 cool_tyl 阅读(3) 评论(0) 推荐(0)
AGC028B题解
摘要:提供一个不用期望的做法。 考虑一个区间 $[l,r]$ 的贡献,就是这段区间的和乘上有多少排列的权值要用到这段区间。 现在讨论有多少排列的权值有这段区间。 这段区间会被用到当且仅当 $l-1$ 和 $r+1$ 均出现在 $l\sim r$ 的前面,即把这个区间分裂出来。 为了避免出错,这里进行分类讨 阅读全文
posted @ 2022-11-07 19:58 cool_tyl 阅读(20) 评论(0) 推荐(0)
CF446C题解
摘要:看到序列操作,又是区间加,想到线段树。 但是维护斐波那契数列的和无法打标记,但发现对于一个区间,加上一个斐波那契数列后仍然满足递推公式 \(f_i=f_{i-2}+f_{i-1}\),只是递推起点 \(f_1,f_2\) 变了,这启发我们将这个数列里的数都和 \(f_1,f_2\) 取得联系,这样每 阅读全文
posted @ 2022-11-07 12:05 cool_tyl 阅读(17) 评论(0) 推荐(0)
CF1643F题解
摘要:容易想到维护 \(c_i=a_i-b_i\),最后只用看 \(c\) 是否全是 \(0\)。 看到区间加后想到维护 \(c\) 的差分,而且 \(c\) 全为 \(0\) 等价于差分全为 \(0\),但普通的差分可行是因为增量满足递推式 \(a_i=a_{i-1}\),这样前减后就刚好抵消,但现在增 阅读全文
posted @ 2022-11-07 10:52 cool_tyl 阅读(18) 评论(0) 推荐(0)
AGC036D题解
摘要:考虑把不存在负环转换为存在差分约束。 由于 \(i \rightarrow i+1\) 的 \(0\) 边不能删,因此有 \(x_i\geq x_{i+1}\),然后是经典操作,把大小限制转为差分,令 \(q_i=x_{i}-x_{i+1}\),那么这个限制就是 \(q_i\geq 0\)。 考虑保 阅读全文
posted @ 2022-11-07 09:55 cool_tyl 阅读(26) 评论(0) 推荐(0)
ARC092B题解
摘要:涉及位运算,考虑拆位。 即统计每一位的贡献。 假设现在统计第 \(i\) 位的贡献。 首先枚举 \(b_i\),然后看有多少个 \(a_j\) 和 \(b_i\) 相加后第 \(i\) 位是 \(1\),如果只看第 \(i\) 位,如果和是 \(1\),则不能进位,否则必须进位,若要求进位,则满足 阅读全文
posted @ 2022-11-06 23:42 cool_tyl 阅读(40) 评论(0) 推荐(0)
洛谷P7359
摘要:考虑暴力 \(dp\),把这条链上的点抽出来,并设 \(a_i\) 等信息都是从 \(i\) 向 \(i+1\) 的信息。 设 \(dp_{i,0/1}\) 表示在 \(i\) 这个点无/有船的最小时间。考虑从 \(i\) 递推到 \(i+1\)。 如果顺流: \(dp_{i+1,0}=\min(d 阅读全文
posted @ 2022-11-06 22:33 cool_tyl 阅读(35) 评论(0) 推荐(0)
CF768E题解
摘要:为了方便,如果 \(a_i=-1\),则将其赋值为 \(n+1\)。 不难从小的位置连向大的位置建图,对于 \(i\),如果 \(a_i\neq n+1\),则 \(i\) 向 \(a_i\) 连边,然后遍历 \(j\in[1,a_i)\),如果 \(j\) 未被标记,则 \(j\) 向 \(i\) 阅读全文
posted @ 2022-11-06 21:16 cool_tyl 阅读(6) 评论(0) 推荐(0)
CF1728G题解
摘要:看到 \(m\) 很小,可以想到状压或容斥。 状压比较困难,考虑容斥。 枚举没有被照亮的点的集合,记为 \(S\),\(f(S)\) 为其方案数。 \[ans=\sum_{S}(-1)^{|S|}f(S) \]考虑计算 \(f(S)\)。发现 \(S\) 里的点会把原区间划分为 \(|S|+1\) 阅读全文
posted @ 2022-11-06 17:19 cool_tyl 阅读(27) 评论(0) 推荐(0)
CF1725I题解
摘要:将要计数的图称为第一种图,关键树成为第二种图。 考虑从小到大考虑每个边权。 对于每个边权,当它连接到第一种图时,有两种选择。 什么也不做。 将这条边加入第二种图。 对于第一种边,它不能将两个双连通分量连接成一个双连通分量,因为这样分别在两个连通分量里的点的答案将会是这条边权(此时所有的环都有这条边, 阅读全文
posted @ 2022-11-06 17:18 cool_tyl 阅读(13) 评论(0) 推荐(0)
CF1704H1题解
摘要:做法来自官方题解。 首先,假设 \(b\) 是固定的,计算不同 \(a\) 的数量。 可以发现如下性质: 如果 \(b_i\neq i\),说明 \(i\) 被 \(b_i\) 占领,一定有 \(a_{b_i}=i\)。 如果 \(b_i=i\),意味着对于所有 \(a_j=i\),\(j\) 攻击 阅读全文
posted @ 2022-11-06 17:06 cool_tyl 阅读(29) 评论(0) 推荐(0)
CF1699E题解
摘要:对于极差,一般思路是固定最小值,然后去找最大值的最小值。 有一个比较显然的性质:相同的数可以执行相同的操作,这样可以看作各个数互不相同。 考虑动态规划:\(f[i][j]\) 表示只考虑 \(j\) 这个数,把它分解成若干个大于等于 \(i\) 的因数,其最大值的最小值是多少。 \[\left\{ 阅读全文
posted @ 2022-11-06 17:05 cool_tyl 阅读(15) 评论(0) 推荐(0)

1 2 下一页