Loading

摘要: 概念 线段树分治是一种用于维护时间轴等的离线算法,本质上是通过维护时间轴的连续区间得到某一时刻的状态。 时间复杂度和普通线段树相同,空间复杂度为 $O(n \log n)$. 现在常见的应用是维护有操作的图连通性问题。 例题 P5787 二分图 /【模板】线段树分治 将每条边看成修改操作,则它的作用 阅读全文
posted @ 2023-01-22 20:06 kymru 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 麻了,这么多典题没做过…… 思路 分治 / 笛卡尔树。 这一类和区间最值相关的区间端点对计数应该都可以用这种做法做。 由于求的是最大值,不妨从大到小考虑每个 $a_i$ 的贡献。 显然存在一个连续的区间 $[l_i, r_i]$,使得这个区间任意包含 $i$ 的子区间最大值均为 $a_i$. 所以与 阅读全文
posted @ 2023-01-22 17:00 kymru 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 建议开题顺序:A -> B -> C -> F -> E -> D 诈骗差评,典题差评,想易写难数据结构差评。 A. Everybody Likes Good Arrays! 好像是结论题,但是一力降十会。 显然最后合并完后,每个元素代表原数组中一个连续段的乘积,并且这些连续段两两不交,刚好覆盖完整 阅读全文
posted @ 2023-01-22 14:51 kymru 阅读(166) 评论(0) 推荐(0) 编辑