随笔分类 -  线段树

摘要:Luogu P3363 Cool loves jiaoyi 题解Link Description 给定一棵 \(n\) 个点的树,输入 \(m\) 条路径 \(s_i, t_i\),在 \(m\) 条路径中选出若干条,使得存在一个点被经过至少 \(k\) 次,最小化路径中长度的最大值减最小值的差。 路径长度定义为经过的点数。 Solution 因为在选出的路径中 阅读全文
posted @ 2021-10-16 11:04 Acestar 阅读(46) 评论(0) 推荐(1)
摘要:Luogu P4211 [LNOI2014]LCA 题解Link Description 给出一个 nn 个节点的有根树(编号为 \(0\) 到 \(n-1\),根节点为 \(0\))。 一个点的深度定义为这个节点到根的距离 \(+1\)。 设 \(dep[i]\) 表示点i的深度,\(LCA(i,j)\) 表示 \(i\) 与 \(j\) 的最近公共祖 阅读全文
posted @ 2021-10-13 21:39 Acestar 阅读(73) 评论(0) 推荐(0)
摘要:线段树优化建图适用于对一段区间内的点进行连边,如果暴力连边,复杂度是 \(O(n^2m)\) 的,显然过大。 考虑支持各种区间操作的线段树。建立两棵线段树,第一棵树从父亲向儿子连边权为 0 的边,这里称为入树,第二棵树从儿子向父亲连边权为 0 的边这里称为出树,它们的叶子节点是相同的,为题目里给出的 阅读全文
posted @ 2021-08-17 13:45 Acestar 阅读(172) 评论(0) 推荐(0)
摘要:题目 一道比较显然的线段树,因为我们要求大于等于 \(B\) 且在第 \(Y\) 站(包含第 \(Y\) 站)以前下车的最年轻的小孩是多大,所以我们可以发现把年龄作为下角标,存是在第几站下的车,每次查找年龄为 \(B\) ~ \(N\) 中的第一个在小于等于 \(Y\) 站下车的小孩的年龄。 我们用 阅读全文
posted @ 2020-05-26 00:21 Acestar 阅读(369) 评论(0) 推荐(0)