专栏文章

CF2162H 题解

CF2162H题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@min4ybvp
此快照首次捕获于
2025/12/01 20:38
3 个月前
此快照最后确认于
2025/12/01 20:38
3 个月前
查看原文
后半部分不同于已有题解的做法。
固定 xx,所有数只分为 <x,=x,>x<x,=x,>x,分别记为 0,1,20,1,2。那么每个区间全 1\leq 1 或者全 1\ge 1,分别记为 A,BA,B 类区间。你发现这里确定好 A,BA,B 类区间的分配之后限制比较明确,考虑确定好所有区间的种类后,令 iicic_i 个,只被 AA 覆盖有 aa 个,只被 BB 覆盖有 bb 个,不被覆盖的位置有 tt 个,限制为 c0t+ac2t+bc0+c2a+b+tc_0\leq t+a\wedge c_2\leq t+b\wedge c_0+c_2\leq a+b+t,这样对 a,b,a+ba,b,a+b 的限制分别是定值,并且问题重点就迁移到 (a,b)(a,b) 的刻画上。将合法的 (a,b)(a,b) 放在平面上,合法的区域是右上部分一个单调区域。
考虑 dp,固定 aa 时最大化 bb 的个数,这个就与 xx 具体的值无关。转化为对位置钦定 A,BA,B,这样要求不存在某个区间同时含有 A,BA,B。直接对 1n1\sim n 的位置的 ABxABx 串做 dp,并记录当前 AA 的个数 aa,值为 fi,a,A/B=maxbf_{i,a,A/B}=\max b。假设当前位置决策为 AA,如果上一个钦定的位置是 AA 那么可以直接转移(前面的位置限制显然更严),否则上一个位置钦定的是 BB,可行的转移位置是一段前缀。
使用前缀 max\max 优化对位置的枚举,时间复杂度 O(n2+m)\mathcal O(n^2+m),后者是需要求出覆盖每个点区间的最小 ll,这个东西从右往左扫描线,记录 iri\leq r 的最小 ll 即可。
另一个 dp 过程中的思路:显然被包含的区间无用,可以去除。接下来认为 l,rl,r 分别严格单调递增,从 i1i-1 转移到 ii 讨论交集即可。

评论

0 条评论,欢迎与作者交流。

正在加载评论...