Сортировка дисков
Имеется стержней и дисков. Изначально каждый из первых стержней содержит ровно диска. Каждый диск имеет один из цветов, обозначенных номерами от до . При этом имеется ровно диска каждого из цветов. Стержень номер пуст.
На каждом шаге мы можем выбрать два стержня и так, чтобы имел как минимум диск и имел не более диска, и переместить верхний диск со стержня на вершину стержня . Обратите внимание, что ни один стержень не может содержать более дисков одновременно.
Ваша цель — отсортировать диски. В частности, вы должны выполнить ряд операций (потенциально ), чтобы в конце каждый из первых стержней содержал ровно диска одного цвета, а -ый стержень был пустым.
Найдите решение для сортировки дисков максимум за операций. Можно доказать, что при этом условии решение всегда существует. Если существует несколько решений, выведите любое.
Входные данные
Первая строка содержит натуральное число . Каждая из следующих строк содержит натуральных чисел — цвет каждого диска, изначально размещенного на стержнях. Первая из строк указывает на верхний ряд дисков, вторая строка указывает на средний ряд, а третья строка указывает на нижний ряд.
Выходные данные
Первая строка должна содержать неотрицательное целое число — количество операций. Каждая из следующих строк должна содержать два различных числа , для всех , представляющих -ую операцию (как написано в условии).