题解:
傻题随便上数据结构都能搞过。
可并堆或者启发式合并splay都可以。
考试时状态太差一个裸模板启发式合并splay调了3h最后还爆零了Qwq、
200行!!!!!!
然后可并堆又快又短,细节又少(然后特么也全都是模板内容,一点非模板代码都没有……),完虐启发式合并。
另外这道题可以用 f(i,j)f(i,j) 表示 从点 ii 到其第 2j2^j 个父亲需要的最小战斗力,这种做...
分类:
其他好文 时间:
2015-04-21 16:15:00
阅读次数:
226
题解:
可并堆:
其实它只是个函数,而不是数据结构,它的数据结构只是“堆”?
可并的随机堆才算一个?
两个堆合并时,对比大小决定谁是父亲,然后劣的和优的 的子再递归进行比较,直到一头为空(无法也不用再比较时),能满足正常插入就可以保证二叉的性质时停止。
代码:
可并随机堆(随机挂到某子上)
#include
#include
#include
#include
#define...
分类:
其他好文 时间:
2015-03-21 11:23:41
阅读次数:
188
数据结构/可并堆 啊……换换脑子就看了看数据结构……看了一下左偏树和斜堆,鉴于左偏树不像斜堆可能退化就写了个左偏树。左偏树介绍:http://www.cnblogs.com/crazyac/articles/1970176.html体会:合并操作是可并堆的核心操作(就像LCT里的access),进....
分类:
其他好文 时间:
2015-03-15 19:46:37
阅读次数:
165
做此题的原因
题号美
题目大意给出一个序列,支持一堆操作(具体看下面)。让你维护它。思路U x y:我们需要可并堆来将两个堆合并。
A1 x v:将这个点从堆中拽出来,改了之后再合并回去。
A2 x v:在堆顶打标记。
A3:记录一个全局变量记录。
F1 x:将这个点到堆顶的链上的所有标记下传,之后返回自己的大小。
F2 x:返回堆顶。
F3:用一个堆(set也行)维护所有堆顶的元素。需...
分类:
其他好文 时间:
2015-03-05 14:54:05
阅读次数:
158
题目大意给出n个人的权值,每次要求将两队人合成一堆,或者杀掉一堆人中的权值最小的那个人。问每次删除的人的权值是多少。思路就是可并堆,没了。我挑最简单的随机堆写的。CODE#include
#include
#include
#include
#define MAX 1000010
using namespace st...
分类:
其他好文 时间:
2015-03-05 08:05:55
阅读次数:
164
题目大意:给定n个节点,每个节点有一个初始权值,维护以下操作:
1.合并两个联通块
2.某个点权值+x
3.某个点所在联通块权值+x
4.所有点权值+x
5.询问某个点的权值
6.询问某个点所在联通块的最大权值
7.询问所有点之间的最大权值
2333333333333333333333333333333333333333333333333333333333333
2333...
分类:
其他好文 时间:
2015-03-03 16:42:54
阅读次数:
152
题目大意:给定一棵有根树,求以每个点为根的子树中有多少点到它的距离不超过l
第一眼是可并堆- - 于是怒写- - 管它正解是啥- -
从下到上维护可并大根堆 键值是该点到当前根节点的距离 一旦堆顶剪枝大于l就弹顶
时间复杂度O(nlogn)
什么?你说将整个堆都加上一个值?
打标记不就好了- - 毫无疑问可并堆是可以打标记的- -
此外我的随机堆写if(flag^=1)就T写if(ra...
分类:
其他好文 时间:
2015-02-02 23:16:51
阅读次数:
235
实现的功能——输入1 x,将x加入小根堆中;输入2,输出最小值并去在堆中除掉 1 var 2 i,j,k,l,m,n,head:longint; 3 a,lef,rig,fix:array[0..100000] of longint; 4 function min(x,y:longint...
分类:
编程语言 时间:
2015-01-19 23:24:43
阅读次数:
257
题目大意:给定n个点,每个点有一个权值,提供两种操作:
1.将两个点所在集合合并
2.将一个点所在集合的最小的点删除并输出权值
很裸的可并堆 n
左偏树就是快啊~
#include
#include
#include
#include
#define M 1001001
using namespace std;
struct abcd{
abcd *ls,*rs;
int...
分类:
其他好文 时间:
2014-11-04 22:52:01
阅读次数:
241
支持合并,删除最小值操作的不就是可并堆吗。。。还要窝有板子,液!这题还要注意,对于一个点,找根的话,要用到并查集。 1 /************************************************************** 2 Problem: 1455 3 ...
分类:
其他好文 时间:
2014-11-01 11:23:16
阅读次数:
257