Завод "Coding" изготовляет детали для устройства кодирования радиопередач. Детали изготавливаются методом отливки в форму.
Деталь представляет собой цилиндр с выступами в четырех направлениях, расположенных относительно друг друга под углом 90 градусов. В каждом направлении может быть от 0 до 5 выступов. Возможные положения выступов фиксированы.
Форма состоит из двух частей, причем линия соединения частей "режет" пространство для детали по середине двух групп выступов.
При проведении ремонтных работ были перепутаны половинки форм. Требуется по заданным деталям собрать половинки форм.
Примечания:
- детали и половинки форм можно вращать;
- все детали уникальны, в том числе с учетом вращения;
- все половинки форм уникальны, в том числе с учетом вращения;
- гарантируется, что имеется единственное решение.
Входной файл
Первая строка содержит целое число - количество деталей ( ).
Следующие строк содержат по 20 целых чисел - расположения выступов на детали ( 4 группы по 5 чисел; 0 - выступа нет, 1 - выступ есть. Группы заданы в условном порядке: верхняя, ближняя, нижняя, дальняя).
Следующие 2*N строк содержат по 15 целых чисел - расположение выступов на половинках форм ( 3 группы по 5 чисел; 0 - выступа нет, 1 - выступ есть. Группы заданы в условном порядке: верхняя, вдавленная, нижняя). Плоскость разреза обращена к наблюдателю.
Выходной файл
Должен состоять из строк, каждая из которых содержит по два целых числа, разделенных пробелом - номера половинок для формы i-ой детали, причем в каждой строке сначала указывается половинка с наименьшим номером, а потом с наибольшим.