D. FreeDiv
ограничение по времени на тест
5 seconds
ограничение по памяти на тест
256 megabytes
ввод
stdin
вывод
stdout

Вася играет во FreeDiv. В этой игре он управляет огромным государством, в котором имеется n городов и m двусторонних дорог между ними. К сожалению, не из каждого города можно добраться до любого другого по этим дорогам. Поэтому Вася решил разделить государство на провинции так, что в каждой провинции из каждого города можно добраться до всех городов этой провинции, но между провинциями дорог нет.

В отличие от других пошаговых стратегий, во FreeDiv у игрока имеется возможность строить туннели между городами - двусторонние дороги, по которым можно перемещать войска незаметно для противника. Однако, в каждый город может вести не более одного туннеля. Сам Вася хочет построить сеть туннелей так, чтобы между любой парой городов его государства был путь по дорогам или туннелям, но при этом в каждую провинцию шло не более k туннелей (иначе, эту провинцию будет сложно удержать в случае захвата остальных провинций вражескими войсками).

Вася обнаружил, что, возможно, ему не удастся построить такую сеть при текущем состоянии государства. Возможно, ему придется предварительно построить несколько дорог между городами различных провинций для объединения этих провинций. Ваша задача определить, какое наименьшее количество дорог нужно построить Васе, чтобы в полученном государстве можно было построить требуемую сеть туннелей.

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

В первой строке заданы три целых числа n, m и k (1 ≤ n, k ≤ 106, 0 ≤ m ≤ 106). В каждой из следующих m строк содержатся два целых числа — номера городов, соединенных соответствующей дорогой. Никакая дорога не соединяет город с самим собой, между каждой парой городов есть не более одной дороги.

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

Необходимо вывести единственное число — наименьшее количество дополнительных дорог.

Примеры
Входные данные
3 3 2
1 2
2 3
3 1
Выходные данные
0
Входные данные
4 2 2
1 2
3 4
Выходные данные
0
Входные данные
4 0 2
Выходные данные
1
Примечание

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

Во втором примере в государстве две провинции. Их можно соединить, например, туннелем между городами 1 и 3.

В третьем примере необходимо построить минимум одну дополнительную дорогу. Например, можно построить дорогу между городами 1 и 2, после чего соединить город 1 с городом 3, а город 2 с городом 4 туннелями.