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

Задача . D. Фёдор идет в президенты


Фёдор выдвигается в президенты Байтландии! На дебатах (да-да!) его, конечно же, спросят, как он собирается решать транспортную проблему Байтландии? Дело действительно непростое, так как транспортная система Байтландии сейчас представляет собой дерево (связный граф без циклов). В министерстве транспорта Байтландии команда Федора выяснила, что средств в казне хватит на постройку всего одной дополнительной дороги. На дебатах Фёдор собирается сказать, что построит эту дорогу так, чтобы в стране было как можно больше различных простых путей. Простой путь — это путь, который проходит через каждую вершину не более одного раза. (два простых пути называются различными, если различается множество ребер, в них входящих).

Однако наука Байтландии в упадке, и команде Фёдора не удалось найти ученых, которые быстро выяснят, а какого же максимальноого количества простых путей можно достичь добавлением в транспортную систему одного ребра? Поэтому он обратился к вам. Ответьте на этот вопрос.

Можно добавлять ребро между вершинами, между которыми оно уже есть, но нельзя добавлять петлю.

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

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

Первая строка содержит одно целое число \(n\) (\(2 \leq n \leq 500\ 000\)) — количество вершин.

Каждая из следующих \(n - 1\) строк содержит два целых числа \(v_i\) и \(u_i\) (\(1 \leq v_i, u_i \leq n\)). Гарантируется что граф — дерево.

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

Выведите одно число — максимальное количество простых путей, которого можно добиться добавлением в граф ровно одного ребра.


Примеры
Входные данныеВыходные данные
1 2
1 2
2
2 4
1 2
1 3
1 4
11
3 6
1 2
1 3
3 4
3 5
4 6
29

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

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