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

Ленивый посетитель

Ленивый посетитель

Один ленивый программист решил посетить n событий. Он был так ленив, что ему было трудно покинуть дом. Но он был также умным программистом, и решил применить хитрость. У него есть список всех событий, которые запланированы на ближайшее будущее, а также начало и конец каждого события. Но он был слишком занят (так что на каждом событии он задерживается на несколько секунд, чем можно пренебречь (то есть берется точка на временной прямой). Ваша задача – найти минимальное число k (минимальное количество которое он будет выходить из дому, чтобы посетить все n событий, а также k списков, показывающих события, которые он посещает за каждый выход из дома.

Входные данные

Первая строка содержит количество тестов tests (1tests100). Вторая строка содержит число n (2n < 100 000). Затем в следующих N строках записаны по два целых число, модули которых не превосходят 2 * 106: l и r (lr) – начало и конец события, соответственно.

Выходные данные

Для каждого теста для каждого выхода из дома выведите в возрастающем порядке номера посещенных событий (разделенных пробелом). В конце каждого теста в одной строке выведите “Result = X”, где X – количество выходов из дому.

Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
1
5
-5 2
-10 0
3 6
5 7
4 8
Выходные данные #1
1 2
3 4 5
Result = 2