思路:

注意到树有这样的性质:每个点的度数和为 $2(n−1)$。

于是我们给每个点 $1$ 的度数,然后分配剩下的 $2(n-1)-n=n-2$ 个数。

之后用贪心算法,对当前最优的点进行操作,对答案的为 $a(2d+1)$。

维护一个优先队列,存入 $a(2d+1)$。

每次取出堆顶,最后将每一个点的累加即可。

代码楼上楼下都已经写的很明白了,我就不赘述了。