Курс історії#6772

Курс історії

30 секунд
256 мегабайтів
Складна

Вам потрібно провести серію лекцій про важливі історичні події, по одній події на лекцію, у довільному порядку. Кожна подія охоплює певний часовий інтервал [a_i, b_i]. Вважатимемо, що дві події пов'язані, якщо їхні інтервали перетинаються. Було б зручно організувати лекції по пов'язаних подіях так, щоб вони були близько одна до одної. Крім того, лекції по непов'язаних подіях повинні бути розташовані в хронологічному порядку (якщо подія передує непов'язаній з нею події , то лекція по повинна бути раніше, ніж лекція по ).

Знайдіть найменше ціле число k \geq 0 і такий порядок лекцій, щоб будь-які дві пов'язані події знаходилися на відстані не більше лекцій одна від одної (лекції з номерами і знаходяться на відстані |i - j| одна від одної).

Вхідні дані

Перший рядок містить кількість тестів .

Структура кожного тесту наступна:

Перший рядок містить значення (1 \leq n \leq 50000).

Кожен з наступних рядків містить два цілі числа a_i і b_i (-10^9 \leq a_i \leq b_i \leq 10^9) — кінці -го інтервалу. Інтервали попарно різні.

Вихідні дані

Відповіді на тести виводьте в порядку їх слідування.

Перший рядок кожного тесту містить найменше значення .

Наступні рядків містять список інтервалів (у тому ж форматі, як і на вході) в такому порядку, щоб будь-які дві пов'язані події знаходилися на відстані не більше лекцій. Не забудьте розташувати будь-які непов'язані інтервали у правильному порядку!

Приклади

Приклад 1

Loading
Loading