09 2024 档案
摘要:边双连通分量 我们首先定义两种边:返祖边为从一个点指向其祖先的边;横叉边从某个点指向树中另一个子树中的点的边。两者统称为非树边。而剩下的边即为树边,树边也就是再搜索树上的边。 考虑设 为点 是第几个被搜索到的, 表示点 通过走若干条边之后
阅读全文
摘要:强连通分量 我们首先定义两种边:返祖边为从一个点指向其祖先的边;横叉边从某个点指向树中另一个子树中的点的边。两者统称为非树边。而剩下的边即为树边,树边也就是再搜索树上的边。 我们定义 为 是第几个被 到的, 从 出发走任意
阅读全文
摘要:普通平衡树 我们这里着重介绍一下 。 首先我们会用一个结构体存下平衡树的节点。这道题中需要存左右儿子编号,优先度(随机的一个值),点上存的数是多少,子树中有多少数。我们记作 。 接下来我们一个一个讲解函数:
阅读全文
摘要:左偏树 可以发现左偏树的别名叫可并堆,就是可合并的堆。于是我们的主要操作便是合并。 我们定义外节点为左儿子或右儿子至少有一个为空的节点。我们定义外节点的 为 ,其余点的 为到其子树内最近的外节点的距离加上 。 左偏树是一棵二叉树,首先其具有堆的
阅读全文
摘要:可持久化线段树 注意,它的全称为可持久化权值线段树。 例题 :可持久化线段树 首先我们考虑几个暴力: 对于每次询问,找出区间中的所有数,直接排序求第 小。这样做的时间复杂度为 的。 对于每次询问,建出一棵权值线段树,然后权值线段树上二分查找即可。
阅读全文
摘要:Rudolf and the Ticket 算法:枚举。 题意简述:从 数组中和 数组中各选出一个数,使得它们的和不超过 ,求选法数量。 考虑直接枚举每一种可能的搭配即可。 Rudolf and 121 算法:贪心。 题意简述:定义一次操作为,该位置上的数减去 \(
阅读全文
摘要:Sakurako's Exam 算法:模拟,分类讨论。 题意简述:给 个数字 和 个数字 ,问能否在每个数字前加上加减号使得原始值为 。 考虑 的个数如果是奇数,那么一定不行。否则如果 的个数是偶数,一定可以。当 \(2
阅读全文