Олимпиадный тренинг

Задача . F. Подружки-садоводы


Две подруги, Алиса и Юки, посадили в своем саду дерево из \(n\) вершин. Дерево — это неориентированный граф без циклов, петель и кратных ребер. Каждое ребро в этом дереве имеет длину \(k\). Изначально вершина \(1\) — корень дерева.

Алиса и Юки выращивают дерево не просто так, они хотят продать его. Стоимостью дерева назовем максимальное расстояние от корня до вершины по всем вершинам дерева. Расстоянием между двумя вершинами \(u\) и \(v\) является сумма длин ребер на пути от \(u\) до \(v\).

Девочки проходили курс юных садоводов, поэтому они умеют модифицировать дерево. За \(c\) монет Алиса и Юки могут поменять корень дерева, выбрав одного из соседей текущего корня и сделав его корнем дерева. Эту операцию можно применять любое количество раз (в том числе и ноль). Обратите внимание, что операция не затрагивает структуру дерева; единственное изменение заключается в том, что корнем дерева становится другая вершина.

Подруги хотят продать дерево с максимальной выгодой. Выгода — это разность стоимости дерева и затрат на все операции.

Помогите девочкам и найдите максимальную выгоду, которую они могут получить, применив к дереву операции произвольное число раз (возможно, ноль).

Входные данные

В первой строке входных данных содержится число \(t\) (\(1 \le t \le 10^4\)) — количество наборов входных данных в тесте.

Далее следуют описания наборов.

В первой строке набора содержатся три целых числа \(n\), \(k\), \(c\) (\(2 \le n \le 2 \cdot 10^5\), \(1 \le k, c \le 10^9\)) — количество вершин в дереве, длина каждого ребра и стоимость операции.

В каждой из следующих \(n - 1\) строк набора содержится по паре целых чисел \(u_i\), \(v_i\) (\(1 \le u_i, v_i \le n\)) — описания ребер. Эти ребра задают дерево.

Сумма значений \(n\) по всем наборам входных данных не превосходит \(2 \cdot 10^5\).

Выходные данные

Для каждого набора входных данных выведите единственное число — максимальную выгоду, которую могут получить Юки и Алиса.


Примеры
Входные данныеВыходные данные
1 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
2
12
17
32

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя