编程题
### 问题描述 小蓝和小桥是两位花园爱好者,她们在自己的花园里种了一棵 $n$ 个节点的树,每条边的长度为 $k$。初始时,根节点为 $1$ 号节点。她们想把这棵树卖掉,但是想卖个好价钱。树的价值被定义为根节点到所有节点的路径长度的最大值。 为了让这棵树更有价值,小蓝和小桥可以对这棵树进行一种操作:花费 $c$ 的代价,将根节点从当前的节点移动到它的一个相邻节点上。注意,这个操作不会改变树的形态,只是改变了根节点的位置。 她们希望通过尽可能地进行操作,使得卖出去的这棵树的盈利最大。盈利被定义为卖出去的树的价值减去操作的总代价。 请你帮助她们,找出她们能够获得的最大盈利。 ### 输入格式 第一行包含一个整数 $t$,表示测试数据组数。 每组数据第一行包含三个整数 $n$、$k$ 和 $c$,表示树的节点数、每条边的长度和进行一次移动操作的代价。 接下来 $n-1$ 行,每行描述树的一条边,包含两个整数 $u_i$ 和 $v_i$,表示树中连接 $u_i$ 和 $v_i$ 之间的一条边。 ### 输出格式 对于每组数据,输出一个整数,表示最大盈利。 ### 样例输入 ```txt 4 3 2 3 2 1 3 1 5 4 1 2 1 4 2 5 4 3 4 6 5 3 4 1 6 1 2 6 5 1 3 2 10 6 4 1 3 1 9 9 7 7 6 6 4 9 2 2 8 8 5 5 10 ``` ### 样例输出 ```txt 2 12 17 32 ``` ### 评测数据规模 对于 $100$% 的评测数据,$1\leq t \leq 20,2\leq n \leq 10^5, 1\leq k,c \leq 10^9, 1\leq u_i, v_i \leq n$。
查看答案
赣ICP备20007335号-2