#T1506. 「一本通 3.3 练习 1」最小圈

「一本通 3.3 练习 1」最小圈

题目描述

原题来自:HNOI 2009

考虑带权的有向图 G=(V,E)G=(V,E) 以及 w:ERw:E→R,每条边e=(i,j)(ij,iV,jV)e=(i,j)(i≠j,i∈V,j∈V)的权值定义为W_i,jW\_{i,j},令 n=Vn=∣V |c=(c_1,c_2,,c_k)(c_iV)c=(c\_1,c\_2,⋯,c\_k)(c\_i∈V)GG 中的一个圈当且仅当 $(c_i,c_{i+1})(1≤i

$$μ(c)=\\frac{1}{k}\\sum\_{i=1}^{k}w\_{c\_i,c\_{i+1}} $$

cc 上所有边的权值的平均值。

μ(c)=minμ(c)μ∗(c)=min\\{μ(c)\\}GG 中所有圈 cc 的平均值的最小值。现在的目标是:在给定了一个图 G=(V,E)G=(V,E) 以及 w:ERw:E→R 之后,请求出 GG 中所有圈 cc 的平均值的最小值 μ(c)=minμ(c)μ∗(c)=min\\{μ(c)\\}

输入

第一行包含两个正整数 nnmm,并用一个空格隔开,其中 n=V,m=En=∣V∣,m=∣E∣,分别表示图中有 nn 个顶点和 mm 条边;

接下来 mm 行,每行包含用空格隔开的三个数 i,j,w_i,ji,j,w\_{i,j}​​ ,表示有一条边 (i,ji,j) 且该边的权值为 w_i,jw\_{i,j}​​ 。

输入数据保证图 G=(V,E)G=(V,E) 连通,存在圈且有一个点能到达其他所有点。

输出

仅包含一个实数 μ=minμ(c)μ∗=min\\{μ(c)\\},要求输出到小数点后 88 位。

样例

4 5
1 2 5
2 3 5
3 1 5
2 4 3
4 1 3
3.66666667

提示

样例输入2:

2 2
1 2 -2.9
2 1 -3.1

样例输出2:

\-3.00000000

数据范围:

对于 20% 的数据,1n100,1m10001≤n≤100,1≤m≤1000

对于 40% 的数据,1n1000,1m50001≤n≤1000,1≤m≤5000

对于 100% 的数据,1n3000,1m104,w_i,j1071≤n≤3000,1≤m≤10^4,∣w\_{i,j}∣≤10^7​​ 。

输入保证 1i,jn1≤i,j≤n

来源

一本通在线评测