[模板]左偏树
可并堆
可以支持合并的堆.
/*大根堆*/
struct heap{
int l,r,w,d;
}h[N];
int rt[N];//第i个堆的根的下标
/*合并以x,y为根的堆*/
inline int merge(int x,int y){
int t;
//其中一个堆为空
if(!x||!y) return x+y;
//使得x,y两个根中x大
if(h[x].w
可并堆
可以支持合并的堆.
/*大根堆*/
struct heap{
int l,r,w,d;
}h[N];
int rt[N];//第i个堆的根的下标
/*合并以x,y为根的堆*/
inline int merge(int x,int y){
int t;
//其中一个堆为空
if(!x||!y) return x+y;
//使得x,y两个根中x大
if(h[x].w