摘要:
初步认识 Intro Treap(树堆)是一种 弱平衡 的 二叉搜索树。它同时符合二叉搜索树和堆的性质,名字也因此为 tree(树)和 heap(堆)的组合。 ————OIWiki \(Treap\)中每个节点设置两个值:\(val\)和\(pri\),分别是值和优先级,在\(Treap\)中,\( 阅读全文
初步认识 Intro Treap(树堆)是一种 弱平衡 的 二叉搜索树。它同时符合二叉搜索树和堆的性质,名字也因此为 tree(树)和 heap(堆)的组合。 ————OIWiki \(Treap\)中每个节点设置两个值:\(val\)和\(pri\),分别是值和优先级,在\(Treap\)中,\( 阅读全文
posted @ 2024-05-28 11:25
HurryCine
阅读(132)
评论(0)
推荐(0)
摘要:
模板题传送门~ 目录 线段树分治 代码实现 线段树分治 线段树分治是一种离线算法,它对时间轴构造了线段树,以处理时间段的处理 举个简单的例子,维护时间[1,4]: 若某次修改从1延伸到3才结束,那么需要修改的便是[1,2]和[3,3] 我们给每个节点分配一个vector来存储发生在这个时间段的所有操 阅读全文
模板题传送门~ 目录 线段树分治 代码实现 线段树分治 线段树分治是一种离线算法,它对时间轴构造了线段树,以处理时间段的处理 举个简单的例子,维护时间[1,4]: 若某次修改从1延伸到3才结束,那么需要修改的便是[1,2]和[3,3] 我们给每个节点分配一个vector来存储发生在这个时间段的所有操 阅读全文
posted @ 2024-05-28 11:24
HurryCine
阅读(25)
评论(0)
推荐(0)
摘要:
算法 这题中有增边,去边和查连通性操作,动态图连通性直接想到线段树分治 具体方法 可以考虑对每个点进行编号(便于操作,反正也就\(2 \times N\)个点),接着就是常规的线段树分治了。 这里注意记录最后出现的边版本。 代码 #include <iostream> #include <cstri 阅读全文
算法 这题中有增边,去边和查连通性操作,动态图连通性直接想到线段树分治 具体方法 可以考虑对每个点进行编号(便于操作,反正也就\(2 \times N\)个点),接着就是常规的线段树分治了。 这里注意记录最后出现的边版本。 代码 #include <iostream> #include <cstri 阅读全文
posted @ 2024-05-28 11:24
HurryCine
阅读(12)
评论(0)
推荐(0)
摘要:
说在前面 这篇题解中用到的数据结构并非最优 可依照思路用其他数据结构完成(比如\(ST\)表) 题目描述 题目传送门~ 给定一颗树,有若干个询问,每个询问给出 \(l\),\(r\),要求编号为 \(l\)~\(r\) 的点任意删去一个之后剩余点的 \(LCA\) 深度最大,输出删去点的编号和 \( 阅读全文
说在前面 这篇题解中用到的数据结构并非最优 可依照思路用其他数据结构完成(比如\(ST\)表) 题目描述 题目传送门~ 给定一颗树,有若干个询问,每个询问给出 \(l\),\(r\),要求编号为 \(l\)~\(r\) 的点任意删去一个之后剩余点的 \(LCA\) 深度最大,输出删去点的编号和 \( 阅读全文
posted @ 2024-05-28 11:24
HurryCine
阅读(8)
评论(0)
推荐(0)

浙公网安备 33010602011771号