写在前面
其实这一题目算是一道好题,但是直接蒯了他人的代码,其实这一行为并不可取。
这一题目算是一道很经典的题目,跟这道题,具有相同类似的模型。
但是我太菜了做不出, 仅仅是路过pick的。 所以可以参考对比进行理解。
Description
参见这里:传送门
Solution && Code
参见这里:传送门
Inspiration
这题提供了一个经典模型:有n
个二元组,限制条件可以表示为一棵树。
每次合并(a, b)
,(c, d)
,并且合并时会对Ans产生贡献,并且合并复杂度低。
首先分析优先级, 并且合并时一般是从父亲到儿子。
那么我们只要用堆维护以键值为优先级的二元组。
用并查集为基础维护二者包含关系即可在log时间内合并。
分析难度在优先级,实现难度不在堆.