ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

1063. Домино

Ограничение времени: 2.0 секунды
Ограничение памяти: 64 МБ

Вступление

Домино – распространенная игра костями, разделенными на два поля, с черными точками, называемыми очками. Кости приставляются играющими одна к другой так, чтобы рядом приходились поля с одинаковым числом очков.
Энциклопедический словарь Ф.А. Брокгауза и И.А. Ефрона

Задача

Рассмотрим произвольный набор костей домино, каждая из которых обозначена двумя числами от 1 до 6. Некоторые наборы можно целиком выложить в цепь, в которой числа на стыке соседних костей совпадают, в то время как другие наборы – нельзя. Например, набор, состоящий из костей (1, 5), (1, 6), (5, 5) и двух костей (2, 4), не может быть выложен в цепь. Однако, если мы добавим в набор кость (2, 5), то сможем выложить получившийся набор в следующую цепь:
Problem illustration
Но нас интересует цепь с наименьшей суммой чисел на костях. В нашем примере вместо кости (2, 5) с суммой 7 мы могли бы добавить две кости (1, 2) с общей суммой 6 и затем выложить следующую цепь:
Problem illustration
Напишите программу, которая для данного набора костей домино найдет дополнительный (возможно, пустой) набор костей с наименьшей возможной суммой чисел, такой, что объединение двух наборов можно выложить в цепь.

Исходные данные

В первой строке записано целое число N – общее количество костей в наборе домино (2 ≤ N ≤ 100). Следующие N строк описывают кости. Каждая кость представлена отдельной строкой в виде двух чисел от 1 до 6, разделенных пробелом. Числа могут быть написаны в любом порядке.

Результат

В первой строке выведите наименьшую сумму чисел на костях дополнительного набора или 0, если это пустой набор. Во второй строке выведите количество костей в дополнительном наборе или 0, если это пустой набор. Затем перечислите кости дополнительного набора в том же формате, что во входных данных.
Если существует несколько различных дополнительных наборов с одинаковой наименьшей суммой чисел, то выведите любой из них.

Примеры

исходные данныерезультат
6
6 1
1 5
5 5
5 2
2 4
4 2
0
0
5
1 5
6 1
5 5
2 4
2 4
6
2
1 2
1 2
Источник задачи: 2000-2001 ACM Northeastern European Regional Programming Contest