Описание

Ограничение по времени: 500 ms
Ограничение по памяти: 256 Mb

Ответы на вопросы

Задача: Grass Planting

Наступило время, когда Фермер Джон садит траву на всех своих полях. Имеется \(N\) полей (\(1 \leq N \leq 10^5\)), последовательно пронумерованных \(1 \ldots N\) и удобно соединенных \(N-1\) двунаправленными дорожками таким образом, что из каждого поля можно добраться до каждого с помощью некоторой последовательности дорожек.

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

К несчастью, его коровы переборчивы, и будут недовольны, если два соседних поля (непосредственно соединённых одной дорожкой) или даже два почти соседних поля (оба непосредственно присоединены к общему полю) будут засеяны травой одного типа.

Помогите ФД определить минимальное количество типов травы, которое ему требуется, чтобы не было недовольных коров.

ФОРМАТ ВВОДА (файл planting.in):

Первая строка ввода содержит \(N\). Каждая из последующих \(N-1\) строк описывает дорожку в терминах двух полей, которые она соединяет.

ФОРМАТ ВЫВОДА (файл planting.out):

Выведите минимальное количество типов травы, которое ФД должен использовать.


Прикрепите файл с исходным кодом программы:
     
или введите исходный код на языке:


Правила оформления программ и список ошибок при автоматической проверке задач
           

Ваш ответ:

Загруженные файлы:


Нет

Примечание учителя: