题目传送门:bzoj2333 luoguP3273 这操作还真“棘手”。。听说这题是可并堆题?然而我不会可并堆。于是我就写了线段数合并,然后调了一晚上,数据结构毁一生!!!QAQ…… 其实这题也可以把合并强行看成树上的关系然后dfs序后直接线段树的,然而我菜啊。。看到连边就只能想到线段树合并。 首先 ...
分类:
其他好文 时间:
2018-12-10 22:34:37
阅读次数:
282
2333? 先记一下吧,这题现在全部都是照着题解做的,因为怎么改都改不出来,只好对着题解改,以后还要再做过 以后再也不用指针了!太恶心了!空指针可不止直接特判那么简单啊,竟然还要因为空指针写奇怪的分类讨论! 没错,就是那个诡异的55和63行。由于要返回删除x后x所在树的新根,要分类讨论:如果x是根且 ...
分类:
其他好文 时间:
2018-03-03 00:38:27
阅读次数:
209
题目 有N个节点,标号从1到N,这N个节点一开始相互不连通。第i个节点的初始权值为a[i],接下来有如下一些操作: U x y: 加一条边,连接第x个节点和第y个节点 A1 x v: 将第x个节点的权值增加v A2 x v: 将第x个节点所在的连通块的所有节点的权值都增加v A3 v: 将所有节点的 ...
分类:
其他好文 时间:
2018-03-01 21:44:32
阅读次数:
183
http://www.lydsy.com/JudgeOnline/problem.php?id=2333 上次那个是线段树,再发一个左偏树 维护两种左偏树 第一种是对每个联通块维护一个左偏树 第二种是对所有第一种左偏树的根节点维护一个左偏树 ...
分类:
其他好文 时间:
2018-01-31 14:38:43
阅读次数:
166
http://www.lydsy.com/JudgeOnline/problem.php?id=2333 读入所有数据,先模拟一遍所有的合并操作 我们不关心联通块长什么样,只关心联通块内有谁 所以可以把一个联通块用一个链表存储 合并x和y时,y的链表整体接到x的链表后面 这样就成了线性结构 按照链表 ...
分类:
其他好文 时间:
2018-01-31 00:59:53
阅读次数:
178
[BZOJ][1] [Luogu][2] sol 左偏树。 这题目真的是调死我了。 左偏树删除任意节点:把这个点的左右子树合并接在原来的父亲上,再一路往上更新一下$dis$即可。注意特判删除的点原先就是根的情况。 对于全局最大值,写一个可删除的双堆结构(也可以写multiset),维护每个联通块的堆 ...
分类:
其他好文 时间:
2018-01-13 00:28:21
阅读次数:
132
题面 "戳我" Sol 右偏树~~滑稽~~+并查集 再在全局开一个可删除的堆(priority_queue) 注意细节 include define RG register define IL inline define Fill(a, b) memset(a, b, sizeof(a)) usin ...
分类:
其他好文 时间:
2018-01-12 22:37:46
阅读次数:
212
【BZOJ2333】棘手的操作(左偏树,STL) 题面 "BZOJ上看把。。。" 题解 正如这题的题号 我只能$2333$ 神TM棘手的题目。。。 前面的单点/联通块操作 很显然是一个左偏树+标记 (确实很显然,只是写死人。。。) 然后对于全局的最大值而言 搞一个$multi$来水 看起来真的简单。 ...
分类:
其他好文 时间:
2018-01-12 22:34:12
阅读次数:
186
n<=300000个点,开始是独立的,m<=300000个操作: 方法一:单点修改、查询,区间修改、查询?等等等等这里修改是块修改不是连续的啊,那就让他连续呗!具体方法:离线后,每次连接两棵树u,v时,把v放到u树根节点的最后,使其dfs序最后,最后扫一次把每棵树dfs一下搞出这个序列,然后线段树操 ...
分类:
其他好文 时间:
2018-01-11 22:15:13
阅读次数:
192
题解: 题目编号很牛逼 2333.。。 题目就是一个模板。。。 至于你打不打得过就是问题了 代码: ...
分类:
其他好文 时间:
2017-12-20 22:10:03
阅读次数:
229