51pts求条qwwwwwwwwq

P3377 【模板】左偏树/可并堆

要更新被合并的点 合并后 指向的 新根节点 ```cpp fa[rt] = fa[l[rt]] = fa[r[rt]] = merge(l[rt], r[rt]); ``` 还有,值相同时先加的先删除 ```cpp if (v[x] > v[y] || (v[x] == v[y] && x > y)) swap(x, y); ```
by Arson1st @ 2023-11-07 12:28:31


@[Arson1st](/user/767765) 哦哦哦,突然懂了!因为并查集的原因,堆里面可能还有部分元素指向要`del`的根,所以直接改是不可取的,还是得通过这种方法来换根!太巧妙力!谢谢谢谢! 此贴终...
by _venti @ 2023-11-07 21:46:49


%%%
by sketchi @ 2023-11-08 12:35:33


|