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

Курс истории

Курс истории

Вам предстоит дать серию лекций о важных исторических событиях, по одному событию за лекцию в произвольном порядке. Каждое событие длилось некоторый временной интервал \[\textbf{a_i}, \textbf{b_i}\]. Будем говорить, что два события связаны между собой, если их интервалы имеют общую точку. Было бы удобно планировать лекции по связанным событиям близко друг к другу. Более того, лекции по несвязанным событиям должны планироваться в их хронологическом порядке (если событие \textbf{A} предшествует несвязанному с ним событию \textbf{B}, то лекция по \textbf{A} должна предшествовать лекции по \textbf{B}). Найдите наименьшее целое \textbf{k }≥ \textbf{0 }и такой порядок лекций, что любые два связанных события находятся на расстоянии не более \textbf{k }лекций друг от друга (лекции с номерами \textbf{i} и \textbf{j }находятся на расстоянии \textbf{| i - j|} друг от друга). \InputFile Первая строка содержит количество тестов \textbf{t}. Структура каждого теста следующая: Первая строка содержит значение \textbf{n }(\textbf{1 }≤ \textbf{n }≤ \textbf{50000}). Каждая из следующих \textbf{n }строк содержит два целых числа \textbf{a_i} и \textbf{b_i} (\textbf{-10^9} ≤ \textbf{a_i} ≤ \textbf{b_i} ≤ \textbf{10^9}) - концы \textbf{i}-го интервала. Интервалы попарно различны. \OutputFile Ответы на тесты выводить в порядке их следования. Первая строка каждого теста содержит наименьшее значение \textbf{k}. Следующие \textbf{n }строк содержат список интервалов (в том же формате как и на входе) в таком порядке, что любые два связанных события находятся на расстоянии не более \textbf{k }лекций. Не забудьте расположить любые несвязанные интервалы в правильном порядке!
Ліміт часу 30 секунд
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
1
3
1 6
2 3
4 5
Вихідні дані #1
1
Джерело 2013 ACM ICPC Central Europe Regional Contest, Краков, Ноябрь 15-17, Задача G