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

1802. Кубик-головоломка

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
Problem illustration
Петька подарил Анке на день рождения интересную головоломку, которую он сам изготовил из дерева. Головоломка состоит из шести плоских квадратов размером n × n. Каждый квадрат с одной стороны покрыт лаком, а с другой стороны разлинован на n2 квадратных ячеек. На некоторых ячейках стоят столбики сечением 1 × 1, каждый столбик имеет высоту не более n.
Помогите Анке собрать из этих частей покрытый лаком кубик размером n × n × n или определите, что этого сделать нельзя. Составные части головоломки можно поворачивать произвольным образом.

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

В первой строке записано целое число n (2 ≤ n ≤ 20). Далее идёт описание шести частей головоломки. Описание каждой части представляет собой n строк по n целых чисел в каждой — высоты столбиков, расположенных на этой части. Все числа в строках записаны через пробел. Высоты лежат в пределах от 0 до n. Сумма высот столбиков во всех частях равна n3.

Результат

Если собрать лакированный кубик из шести частей нельзя, выведите в единственной строке «No». В противном случае в первой строке выведите «Yes», а затем выведите описание схемы сборки кубика — n блоков по n строк по n чисел в каждой строке. Первый блок должен описывать нижний слой получившегося кубика, второй блок — слой, расположенный сразу над нижним, и так далее. Последний блок должен описывать верхний слой кубика. Первая строка описания слоя должна задавать задние кубики этого слоя, вторая — кубики, расположенные сразу перед задними, и так далее. Последняя строка описания слоя должна задавать передние кубики. Кубики во всех строках должны описываться в порядке слева направо. Каждое число должно лежать в пределах от 1 до 6 и задавать номер части головоломки, которой принадлежит соответствующая ячейка кубика (части занумерованы числами от 1 до 6 в том порядке, в котором они заданы на входе). Если возможных схем сборки кубика несколько, выведите любую.

Примеры

исходные данныерезультат
3
0 0 0
1 0 1
1 2 0
1 0 0
1 1 1
0 0 0
0 2 1
1 0 0
0 0 0
0 1 0
0 0 0
0 2 1
1 0 0
0 0 1
0 2 1
0 0 1
0 2 1
1 0 0
Yes
3 4 4
1 4 1
1 1 5
3 3 2
5 6 2
5 1 2
6 4 2
3 6 6
5 5 6
3
0 0 0
0 3 0
0 0 0
2 0 0
0 0 0
0 0 0
0 0 2
0 0 0
0 0 0
2 0 0
0 0 0
0 0 0
0 0 2
0 0 0
0 0 0
2 1 2
2 1 2
2 2 2
No
Автор задачи: Станислав Васильев
Источник задачи: NEERC 2010, Четвертьфинал Восточного подрегиона