可能一样的不是那么彻底
[正确的代码提交链接](https://www.luogu.com.cn/record/133568083)
by luanmenglei @ 2023-11-05 19:34:41
你的 `fa` 究竟是左偏树还是并查集,感觉杂糅了吧。
by wangzhifang @ 2023-11-05 19:41:14
区别在于空子树和叶子结点是否要左右交换。
by wangzhifang @ 2023-11-05 19:42:24
@[wangzhifang](/user/35347) 为啥会杂糅(?
如果要维护一个点在哪个堆里不就是要维护这个 fa 嘛
by luanmenglei @ 2023-11-05 19:43:20
@[wangzhifang](/user/35347) ok 我看看
by luanmenglei @ 2023-11-05 19:43:53
@[wangzhifang](/user/35347) 那请问为啥会导致这个问题呢???如果是空的和叶子左右换也不应该会影响删除情况吧
by luanmenglei @ 2023-11-05 19:47:32
@[luanmenglei](/user/139066) 路径压缩可能会指向一个已经被删除的结点吧。
by wangzhifang @ 2023-11-05 19:47:58
就是压缩了以后删除,但是只改了左右儿子这种在 `merge` 的时候遇到的。
by wangzhifang @ 2023-11-05 19:48:58
@[wangzhifang](/user/35347) 在我代码里有
```
fa[x] = merge(fa[lc[x]], fa[rc[x]]);
```
所以不会压缩到删除了的节点啊
by luanmenglei @ 2023-11-05 19:49:26