Линейная сеть
В центре обработки больших данных была установлена линейная сеть состоящая из компьютеров. Все компьютеры пронумерованы целыми числами последовательно от до . Между компьютерами с соседними номерами имеется прямое сообщение. Ясно, что в такой сети можно напрямую или же косвенно обмениваться данными между любыми двумя компьютерами. Однако, из-за интенсивности операций, некоторые компьютеры иногда выходят из строя. В таких случаях между некоторыми компьютерами прерывается сообщение, передача данных становится невозможной.
Вас просят узнать количество групп в сети на данный момент. Группой считается максимальное количество активных компьютеров, где любые два компьютера из одной группы имеют сообщение между собой. Так же, группа может состоять только из одного компьютера.
Вам надо ответить на запросов. В каждом из запросов или дан номер компьютера только что вышедшего из строя или же необходимо посчитать количество групп.
Для лучшего понимания задачи внизу приведено пояснение к примеру.
Входные данные
В первой строке даны два целых числа и . В последующих строках даны запросы.
Каждый запрос начинается с числа обозначающего тип запроса. После , всегда следует номер вышедшего из строя компьютера.
Выходные данные
Для каждого запроса -го типа в отдельной строке необходимо вывести количество групп в сети на данный момент.
Примеры
— Исходное положение сети. Количество групп — .
— Положение сети после выхода из строя компьютера номер . Количество групп — .
— Положение сети после выхода из строя компьютера номер . Количество групп — .
— Положение сети после выхода из строя компьютера номер . Количество групп — .
Запросы о выходе из строя компьютера могут повторяться.