专栏文章
题解:CF2143D2 Inversion Graph Coloring (Hard Version)
CF2143D2题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mint7258
- 此快照首次捕获于
- 2025/12/02 07:57 3 个月前
- 此快照最后确认于
- 2025/12/02 07:57 3 个月前
子序列 不合法当且仅当 ,也就是说 的 LDS 不超过 2。那么根据狄尔沃斯定理,条件等价于 能被不超过两个上升子序列覆盖(最长反链等于最小链覆盖)。
设状态 表示前 个数组成的两个上升子序列中一个结尾值是 ,另一个是 的方案数。为了不算重,我们钦定 ,并且尽量在 处转移。
写出在 处的转移方程:
f_{i,a_i,k} \gets f_{i-1,j,k} & k\leq j\leq a_i \\
f_{i,j,a_i} \gets f_{i-1,j,k} & k\leq a_i< j
\end{cases} $$
对于第一种转移,直接对每个 $k$ 开一个树状数组,转移相当于单点修改前缀查询;第二种转移对每个 $j$ 开一个树状数组,转移类似。总时间复杂度 $O(n^2\log n)$。\
[提交记录](https://codeforces.com/contest/2143/submission/339987721)设状态 表示前 个数组成的两个上升子序列中一个结尾值是 ,另一个是 的方案数。为了不算重,我们钦定 ,并且尽量在 处转移。
写出在 处的转移方程:
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...