bzoj#P3754. Tree之最小方差树

Tree之最小方差树

题目描述

Wayne 在玩一个很有趣的游戏。在游戏中,Wayne 建造了 nn 个城市,现在他想在这些城市间修一些公路,当然并不是任意两个城市间都能修,为了道路系统的美观,一共只有 mm 对城市间能修公路,即有若干三元组 (ui,vi,ci)(u_i,v_i,c_i) 表示 uiu_iviv_i 间有一条长度为 cic_i 的双向道路。当然,游戏保证了,若所有道路都修建,那么任意两城市可以互相到达。Wayne 拥有恰好 n1n-1 支修建队,每支队伍能且仅能修一条道路。当然,修建长度越大,修建的劳累度也越高,游戏设定是修建长度为 cc 的公路就会有 cc 的劳累度。当所有的队伍完工后,整个城市群必须连通,而这些修建队伍们会看看其他队伍的劳累情况,若劳累情况差异过大,可能就会引发骚动,不利于社会和谐发展。Wayne 对这个问题非常头疼,于是他想知道,这 n1n-1 支队伍劳累度的标准差最小能有多少。

标准差的定为:设有 nn 个数,分别为 aia_i,它们的平均数为 aˉ\bar a,那么标准差就是 0i<n(aiaˉ)2n\sqrt{\frac{\sum_{0 \le i < n}(a_i- \bar a)^2}{n}}

输入格式

第一行两个正整数 n,mn,m。 接下来 mm 行,每行三个正整数 ui,vi,ciu_i,v_i,c_i

输出格式

输出最小的标准差,保留四位小数。

3 3
1 2 1
2 3 2
3 1 3
0.5000

数据规模与约定

对于 100%100\% 的数据,n100n \le 100m2×103m \le 2 \times 10^3ci100c_i \le 100