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

Сборка гирлянды

Сборка гирлянды

Вася на Новый год купил ёлочную гирлянду "Сделай сам". В ее комплект входят: \begin{itemize} \item \textbf{2·N} разноцветных лампочек, среди них нет лампочек одинакового цвета; \item \textbf{2·N} патронов, в которые эти лампочки нужно вкрутить; \item достаточное количество проводов, чтобы соединить патроны с вкрученными в них лампочками в сеть. \end{itemize} Каждый патрон имеет некоторое количество контактов для подсоединения проводов. В комплекте представлено \textbf{N }типов патронов. Патрон первого типа имеет один контакт для подсоединения провода, у патрона второго типа таких контактов два, у патрона третьего типа ― три контакта для проводов, и т.д. Патроны типа \textbf{N} снабжены \textbf{N }контактами для подсоединения проводов. Патронов каждого типа представлено ровно по две штуки. Гирлянда заработает, если так распределить лампочки по патронам и соединить соответствующие патроны проводами, чтобы выполнились следующие условия: \begin{itemize} \item у всех патронов все контакты для проводов должны быть использованы; \item к одному контакту патрона должен быть подсоединен только один провод; \item у любого провода оба конца должны быть подсоединены к контактам двух разных патронов; \item нельзя два различных патрона соединить более чем одним проводом. \end{itemize} Для Васи эта задача показалась очень трудной. Помогите ему собрать гирлянду к Новому году. \InputFile Во входном файле записано целое число \textbf{N} --- количество типов патронов (\textbf{1} ≤ \textbf{N} ≤ \textbf{500}). \OutputFile В первую строку выходного файла необходимо вывести целое число \textbf{M} --- количество проводов, которые потребуются для сборки гирлянды. В следующие \textbf{M} строк нужно вывести через пробел по два целых числа ― номера лампочек, вкрученных в патроны, соединенные одним проводом. Лампочки нумеруются числами от \textbf{1} до \textbf{2·N}. Если решений несколько, то выведите любое.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
3
Выходные данные #1
6
1 2
1 3
2 4
1 5
2 6
5 6
Источник Очный тур XIII Открытой Всесибирской олимпиады по программированию имени И.В. Поттосина