[模板]左偏树
可并堆
可以支持合并的堆.
/*大根堆*/ 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