长沙是一座被山水环绕的美丽城市,风景迷人。长沙有许多旅游景点:岳麓书院是湖南大学的前身,也是中国四大书院之一,始建于公元 976 年的北宋时期。橘子洲是世界上最长的内河江心洲,位于湘江之中,因毛主席所作的著名诗词《沁园春·长沙》而闻名。马王堆是著名的考古遗址,出土了三具西汉时期的古尸,其中辛追夫人的墓葬保存最为完好,出土了完整的化妆品盒、漆器和精美的丝织品。火宫殿代表了湖湘文化和楚巫文化,以及湖南的地理文化和独特的饮食文化,游客可以在此品尝到地道的湘菜。
每年长沙都会举办马拉松比赛。在规划路线时,组织者希望经过一些旅游景点,以增加趣味性,吸引更多的运动员和观众。长沙可以看作是一个由 $N$ 个交叉路口和许多双向道路组成的图。一条道路连接两个交叉路口 $i$ 和 $j$,长度为 $W_{i,j}$。然而,为了减少对日常交通的影响,当地政府规定只有 $N-1$ 条道路可以用于路线,且这些道路连接了所有 $N$ 个交叉路口。只有一条相邻道路的交叉路口位于湘江西岸,且只有在这些交叉路口才有渡轮。马拉松比赛按惯例从湖南大学的红楼广场(标记为 $S$)出发。组织者不希望路线经过任何道路两次,因此马拉松必须分为两段:第一段和第二段。必须从岸边的交叉路口中选择两个不同的点作为半程终点 $S_1$ 和半程起点 $S_2$。第一段从 $S$ 开始,到 $S_1$ 结束。第二段从 $S_2$ 开始,到 $S$ 结束。组织者将根据政府要求使用渡轮将运动员从 $S_1$ 运送到 $S_2$。
考虑到安全因素,需要在每一段路程的某些交叉路口设置补给点,并且在 $S$、$S_1$ 和 $S_2$ 处必须设置补给点。
根据科学研究,两个相邻补给点之间的最适宜距离为 $L$,组织者希望最小化路线的评估值。对于每一段路程,从起点到休息点 $i$ 的评估值记为 $E_i$,公式如下:
$$E_i = E_j + \left(\sum_{k=j}^{i-1} D_{k,k+1} - L\right)^2$$
其中 $j$ 是路线上前一个补给点,$\sum_{k=j}^{i-1} D_{k,k+1}$ 表示从交叉路口 $j$ 到 $i$ 的路线长度。起点的评估值为零。一段路程的评估值等于从其起点到终点的评估值。
你的任务是选择 $S_1$、$S_2$ 以及补给点,以最小化两段路程的总评估值。
输入格式
输入包含多组测试数据。 对于每组测试数据,第一行包含两个整数 $N, L$ ($1 \le N \le 20000, 1 \le L \le 10^9$)。 接下来的 $N-1$ 行,每行包含 3 个整数 $U, V, W$,表示一条连接交叉路口 $U$ 和 $V$ 的双向道路,长度为 $W$ ($1 \le U, V \le N, 1 \le W \le 10^3$)。 红楼广场($S$)的编号始终为 1。输入以文件结束符(EOF)结束。
输出格式
对于每组数据,输出一行,即最优方案的评估值,保留两位小数。如果无解,输出 -1。
样例
输入格式 1
7 4 1 2 2 1 3 7 1 4 3 2 5 6 2 6 5 3 7 8
输出格式 1
7.00
说明
样例方案: