eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Домино

Домино

Набор домино состоит из прямоугольных костяшек, каждая из которых разделена на две половинки линией, параллельной более короткой стороне. На каждой из половинок нарисованы точки, количество которых соответствует числу от \textbf{0 }до \textbf{M }включительно. На костяшках полного набора домино обозначены все возможные различные пары чисел, например, если \textbf{M }равно \textbf{3}, то полный набор содержит \textbf{10 }костяшек: \textbf{(0, 0)}, \textbf{(0, 1)}, \textbf{(0, 2)}, \textbf{(0, 3)}, \textbf{(1, 1)}, \textbf{(1, 2)}, \textbf{(1, 3)}, \textbf{(2, 2)}, \textbf{(2, 3)}, \textbf{(3, 3)}. Из костяшек можно выкладывать цепочки, соединяя пары костяшек короткими сторонами, если количества точек на соседних с местом соединения половинках костяшек равны. Некоторые костяшки были удалены из полного набора. Требуется определить, какое минимальное количество цепочек нужно выложить из оставшихся в наборе костяшек, чтобы каждая из них принадлежала ровно одной цепочке. Напишите программу, которая по информации о наборе домино должна ответить, какое минимальное количество цепочек нужно выложить. \InputFile В первой строке содержится одно целое число \textbf{M }(\textbf{0 }≤ \textbf{M }≤ \textbf{100}), которое соответствует максимально возможному количеству точек на половинке костяшки. Во второй строке записано одно целое число \textbf{N}, равное количеству костяшек, удаленных из полного набора. Каждая \textbf{i}-я из последующих \textbf{N} строк содержит по два числа \textbf{A_i} и \textbf{B_i}. Это количества точек на половинках \textbf{i}-й удалённой костяшки. \OutputFile Вывести одно целое число \textbf{L }- минимальное количество цепочек.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
7
2
7 5
3 4
Выходные данные #1
2
Автор Андрей Стасюк
Источник 2005 XVIII Всеукраинская олимпиада по информатике, Ровно, Апрель 10 - 16, тур 2