Codeforces Round 240 (Div. 1) |
---|
Закончено |
Машмох играет в новую игру. В начале у него есть k литров воды и p монеток. Также у него есть корневое дерево (неориентированный связный ациклический граф), состоящее из m вершин. Каждая вершина дерева содержит резервуар с водой, изначально пустой.
Игра начинается с того, что Машмох выбирает несколько (не более k) таких резервуаров (кроме того, что находится в корне) и льет в каждый ровно 1 литр воды. Затем следующий процесс продолжается, пока в резервуарах не остается воды.
Предположим, что до опустошения всех резервуаров дерева произошло l итераций. Обозначим количество воды в резервуаре корня после i-й итерации как wi. В результате описанного процесса Машмох выиграет max(w1, w2, ..., wl) долларов. Машмох хочет знать, какое максимальное количество долларов он может выиграть, сыграв приведенную выше игру. Он просит вас найти для него это значение.
В первой строке записано три целых числа через пробел m, k, p (2 ≤ m ≤ 105; 0 ≤ k, p ≤ 109).
Каждая из следующих m - 1 строк содержит два целых числа через пробел ai, bi (1 ≤ ai, bi ≤ m; ai ≠ bi), ребро дерева.
Считайте, что вершины дерева пронумерованы от 1 до m. Корень дерева имеет номер 1.
Выведите единственное целое число — число, которое Машмох попросил вас найти.
10 2 1
1 2
1 3
3 4
3 5
2 6
6 8
6 7
9 8
8 10
2
5 1000 1000
1 2
1 3
3 4
3 5
4
Дерево в первом примере показано на рисунке внизу. Черный, красный и синий цвета соответствуют вершинам с 0, 1, 2 литрами воды.
Один из способов заработать максимальное количество денег — залить 1 литр воды в каждую из вершин, 3 и 4. Начальное состояние указано на рисунке ниже.
Затем первым ходом Машмох заплатит одну монетку за закрытие двери резервуара в третьей вершине. Дерево после первого хода показано на рисунке ниже.
После второго хода в корне будет 2 литра воды.
Название |
---|