12071. Обробити запити
У нас є \(N\) коробок, пронумерованих від 1 до \(N\), які спочатку порожні, і необмежена кількість чистих карток.
Обробляйте \(Q\) запитів по порядку. Нижче наведено три типи запитів.
- \(1\) \(i\) \(j\) : виведіть число \(i\) на порожній картці та помістіть його в поле \(j\).
- \(2\) \(i\) : Повідомте всі числа, написані на картках у полі \(i\), у порядку зростання.
- \(3\) \(i\) : Повідомте всі номери коробок, які містять картку з номером \(i\), у порядку зростання.
Тут зверніть увагу на наступне.
- У запиті другого типу, якщо поле \(i\) містить кілька карток з однаковим номером, це число має бути надруковано стільки разів, скільки дорівнює кількості цих карток.
- У запиті третього типу, навіть якщо коробка містить кілька карток з номером \(i\), номер цієї коробки слід друкувати лише один раз.
Обмеження
- \(1≤N,Q≤2×10^5\)
Для запиту першого типу:
- \(1≤i≤2×10^5\)
- \(1≤j≤N\)
Для запиту другого типу:
- \(1≤i≤N\)
- Коробка \(i\) містить декілька карток коли задано цей запит.
Для запиту третього виду:
- \(1≤i≤2×10^5\)
- Деякі поля містять картку з номером \(i\), коли задано цей запит.
Повідомляється не більше \(2×10^5\) чисел.
Усі значення у вхідних даних є цілими числами.
Формат вхідних даних
Перший рядок містить ціле число \(N\).
Другий рядок містить ціле число \(Q\).
Наступні \(Q\) рядків містять запити \(q_i\).
Формат вихідних даних
Дайте відповіді на запитання другого і третього роду по порядку.
Для кожного з цих запитів виведіть один рядок, що містить елементи, про які потрібно повідомити, у порядку зростання, з пробілами між ними.
Приклад вхідних даних
5
8
1 1 1
1 2 4
1 1 4
2 4
1 1 4
2 4
3 1
3 2
Приклад вихідних даних
1 2
1 1 2
1 4
4
Давайте опрацюємо запити по порядку.
Напишіть 1 на картці та покладіть її в поле 1.
Напишіть 2 на картці та покладіть його в поле 4.
Напишіть 1 на картці та покладіть його в поле 4.
У поле 4 містяться картки з цифрами 1 і 2.
- Виведіть 1 і 2 у такому порядку.
Напишіть 1 на картці та покладіть її в поле 4.
У поле 4 містяться картки з числами 1, 1 і 2.
- Зауважте, що ви повинні надрукувати 1 двічі.
Коробки 1 і 4 містять картку з номером 1.
- Зауважте, що ви повинні надрукувати 4 лише один раз, навіть якщо коробка 4 містить дві картки з номером 1.
Коробка 4 містить картку з номером 2.
Приклад вхідних даних
1
5
1 1 1
1 2 1
1 200000 1
2 1
3 200000
Приклад вихідних даних
1 2 200000
1
Коментарі