题解:P10928 走廊泼水节 heyZZZ · 2024-09-11 17:47:52 · 题解 回顾 kruskal: 取边权最小的一条边,若两个点在不同连通块(并查集),则连边合并。 我们把以上规则改一下: 如果点 A 的老大的小弟数<点 B 的老大的小弟数,A 成为 B 小弟。 反之,B 成为 A 小弟。 我们定义 s_i 是点 i 的老大的小弟数,w 是 a 到 b 的边权。 贡献和为:(s_A×s_B−1) \times (w+1)。 代码楼上楼下都已经写的很明白了,我就不在赘述了。