题意
给定(n)点的树,给定(m)个关键点,从中选(k)个,从任意点开始任意点结束的最短路径期望长度
做法
假设(k)个点已经选好了,则答案为(2sum-L),(sum)为虚树边权和,(L)为直径长度
枚举每条边是否出现,令(u)为子树外的关键点,(d)为子树内的关键点,则出现的方案数为(frac{{mchoose k}-{uchoose k}-{dchoose k}}{{mchoose k}})
枚举直径((u,v)),枚举每个点判断(dis(u,x),dis(v,x))与(dis(u,v))的大小
题外话
topcoder上的题,记得当年做法好像有点复杂...