专栏文章
CF925E
CF925E题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @minalffh
- 此快照首次捕获于
- 2025/12/01 23:16 3 个月前
- 此快照最后确认于
- 2025/12/01 23:16 3 个月前
给定一棵树,点有点权 ,有颜色黑白,初始全白。需要维护:单点翻转颜色,问有多少个白点内部有至少 个黑点。。
果断考虑分块。考虑建立 dfs 序之后维护 减去子树内黑点的个数。则修改可以直接转化为对一系列区间进行区间 ,然后求全局 的点的个数。
对于整块而言,我们可以维护桶数组 为第 个块内有多少个白点 满足 。这样在块内统一加的时候我们可以轻而易举地维护贡献变化量:只需要打一个偏移 tag 即可。散块直接暴力即可。
一个很有意思的分块:每条重链单独分块长为 的块,这样单次操作时间复杂度为 。于是时间复杂度就来到了 。
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...