10 2021 档案

摘要:之前没有写过可撤销并查集,这里整理一下. 普通并查集是不支持撤销/断边操作的. 但是如果加边顺序是 $(1,2,3,4,5)$, 断边顺序是 $(5,4,3,2,1)$ 的话是可以维护的. 我们只需要用一个启发式合并的并查集加上栈来存储合并信息即可. 这样做可行,是因为始终是向上合并,并且删除时是从 阅读全文
posted @ 2021-10-31 13:22 guangheli 阅读(1126) 评论(0) 推荐(2)
摘要:CDQ 分治 在二维偏序问题中,可以利用排序干掉一维,并用树状数组维护另一维. 在三维偏序中,就需要利用 cdq 分治,干掉一维,并用树状数组+排序维护剩下两维. 例题 1. 树状数组模板题 本来,这道题应该用树状数组来完成,不过可以利用本题练习 $\mathrm{cdq}$ 分治. 操作序列的顺序 阅读全文
posted @ 2021-10-28 23:29 guangheli 阅读(76) 评论(0) 推荐(0)
摘要:只需考虑 $2017$ 的状态. 令 $0$ 表示没开始,$1$ 表示有 $2$, $2$ 表示有 $20$..... 令 $\mathrm{f[i][sta]}$ 表示 $\mathrm{DP}$ 到 $\mathrm{i}$, 状态为 $\mathrm{sta}$ 的最小删除步数. 然后在进行状 阅读全文
posted @ 2021-10-22 20:53 guangheli 阅读(49) 评论(0) 推荐(0)
摘要:比较好的线段树二分. 先考虑没有修改如何做: 对于一个 $\mathrm{y}$, 先找到第一个可以选的 $\mathrm{a[i]}$, 然后尽量选这个连续段. 显然,每当一个连续段停止时 $\mathrm{y}$ 的规模至少缩小了 $\mathrm{\frac{1}{2}}$. 所以,连续段的个 阅读全文
posted @ 2021-10-21 22:09 guangheli 阅读(33) 评论(0) 推荐(0)
摘要:Team Building 来源:CF1316E, 2300 直接按照 $\mathrm{a[i]}$ 排序,然后发现决策点是连续的(除非观众选择完) 然后就直接令 $\mathrm{f[i][j]}$ 表示考虑前 $\mathrm{i}$ 个,状态为 $\mathrm{j}$ 的情况. 判断的话就 阅读全文
posted @ 2021-10-20 06:35 guangheli 阅读(39) 评论(0) 推荐(0)
摘要:Least Cost Bracket Sequence 来源:CF3D 比较巧妙的堆+贪心题. 考虑括号序列的合法条件:任意前缀和不小于 0 且最终和为 0. 不妨先在每个括号位置强制选择 $)$, 然后如果合法就继续,不合法就从前面选右括号的位置改变决策. 改变主意的选择用优先队列去维护那个差值, 阅读全文
posted @ 2021-10-19 19:06 guangheli 阅读(78) 评论(0) 推荐(0)
摘要:解决例如 $\mathrm{x}$ 或 $\mathrm{y}$ 其中一个需要成立的问题. 处理这种问题的时候对于每个点建立真和假. 然后就连一下边就行,特别注意这个边是有对称性的. 所以如果每次只连了一种边就要注意是否没考虑周全. 在输出答案的时候显然可以用是否在一个联通分量内来判合法性. 然后如 阅读全文
posted @ 2021-10-06 20:24 guangheli 阅读(36) 评论(0) 推荐(0)