Майже Union-Find#2047

Майже Union-Find

1 секунда
128 мегабайтів
Середня

Сподіваюся, ви знайомі з елегантною структурою даних Union-Find. У цій задачі вам потрібно реалізувати щось схоже, але не зовсім те саме.

Структура даних, яку потрібно реалізувати — це набір неперетинних множин, який підтримує три операції:

Спочатку існує множин: \{1\}, \{2\}, \{3\}, \ldots, \{n\}.

Вхідні дані

Кілька тестових випадків. Кожен тестовий випадок починається з рядка з двома цілими числами та (1 \leq n, m \leq 100000) — кількість чисел та кількість команд. Кожен з наступних рядків містить одну команду. Для кожної операції 1 \leq p, q \leq n. Розмір вхідного файлу не перевищує МБ.

Вихідні дані

Для кожної команди типу вивести два цілих числа: кількість елементів та їхню суму.

Приклади

Приклад 1

Loading
Loading

Примітка

Спочатку: \{1\}, \{2\}, \{3\}, \{4\}, \{5\}

Після операції 1 1 2: \{1,2\}, \{3\}, \{4\}, \{5\}

Після операції 2 3 4: \{1,2\}, \{3,4\}, \{5\} (ми ігноруємо порожню множину, що утворюється після вилучення з )

Після операції 1 3 5: \{1,2\}, \{3,4,5\}

Після операції 2 4 1: \{1,2,4\}, \{3,5\}