题目描述
定义一个可重实数集 $\{a_i\}$ 的离差为:对于任意实数 $\mu$,$\sum_{i}\lvert a_i-\mu \rvert$ 的最小值。记为 $d(\{a_i\})$。例如,数集 $\{1,2,4\}$ 的离差为 $3$,因为当 $\mu = 2$ 时 $\sum_{i}\lvert a_i-\mu \rvert=\lvert 1-2 \rvert+\lvert 2-2 \rvert+\lvert 4-2 \rvert=3$ 最小。
对于一棵带边权的树,我们定义它的离差为所有边的边权组成的可重集的离差。
现在给出一张无向连通图,每条边有一个权值,请求出它的最大离差生成树,即所有生成树中离差最大的一个。你需要输出这个离差。
输入格式
第一行两个正整数 $n, m$,分别表示图的点数和边数。
接下来 $m$ 行,每行三个正整数 $u, v, w$,用空格分隔,表示 $u, v$ 之间有一条权值为 $w$ 的无向边。点的编号从 $1$ 到 $n$。
输出格式
输出一行一个整数,表示最大离差。
输入/输出样例 #1
输入 #14 6
1 2 1
1 3 2
2 3 5
3 2 4
2 4 3
3 4 2
输出 #1
4
输入 #2
12 14
1 2 786042221
2 3 809044795
1 4 329386659
1 5 238858979
3 6 877890560
5 7 6361273
2 8 152371342
8 9 359313888
4 10 191185696
6 11 299487213
2 12 693994526
10 4 492620814
7 11 233529699
9 11 94590506
输出 #2
2933881117
数据范围与提示
对于所有数据,$2\le n\le 2\times 10^5, 1\le m\le 5\times 10^5, 1\le w\le 10^9$。
$$ \begin{array}{|c|c|c|c|c|} \hline \text{子任务编号} & \text{分值} & n \leq & m\leq & \text{特殊限制} \\ \hline \text{1} & 15 & 10 & 20 & w\le 100 \\ \hline \text{2} & 15 & 100 & 100 & w\le 100 \\ \hline \text{3} & 20 & 10^3 & 10^3 & \text{-} \\ \hline \text{4} & 10 & 10^5 & 10^5 & m=n \\ \hline \text{5} & 15 & 10^5 & 10^5 & n\text{ 是奇数} \\ \hline \text{6} & 25 & 2\times 10^5 & 5\times 10^5 & \text{-} \\ \hline \end{array} $$
