Codeforces Round 133 (Div. 2) |
---|
Закончено |
На стадион пришли n студентов. Они хотят сыграть в футбол, а для этого нужно разделиться на две команды с одинаковым количеством человек в каждой.
Известно, что в собравшейся компании имеются заклятые враги. У каждого студента имеется не более двух заклятых врагов. Причем, если студент A заклятый враг студента B, то студент B заклятый враг студента A.
Студенты хотят разделиться так, чтобы никакие два заклятых врага не оказались в одной команде. В случае, если нужным способом разделиться нельзя, некоторым студентам придется посидеть на скамейке запасных.
Определите какое наименьшее количество студентов придется отправить на скамейку запасных, чтобы можно было сформировать две команды описанным способом и матч наконец-то начался.
В первой строке записаны два целых числа n и m (2 ≤ n ≤ 100, 1 ≤ m ≤ 100) — количество студентов и количество пар заклятых врагов соответственно.
В следующих m строках описаны отношения вражды между студентами. Каждое отношение вражды описывается двумя числами ai и bi (1 ≤ ai, bi ≤ n, ai ≠ bi) — номера враждующих студентов. Каждое из отношений вражды приведено в списке ровно один раз. Гарантируется, что у каждого студента не более двух заклятых врагов.
Можете считать, что студенты некоторым образом пронумерованы различными целыми числами от 1 до n.
Выведите единственное целое число — наименьшее количество студентов, которое нужно отправить на скамейку запасных, чтобы начать матч.
5 4
1 2
2 4
5 3
1 4
1
6 2
1 4
3 4
0
6 6
1 2
2 3
3 1
4 5
5 6
6 4
2
Название |
---|