Magic Domino Magic Domino
Challenging
EN Russian

Когда Никола не нашел себе оппонента для игры в Домино, он решил играть сам с собой в Магический Домино Пасьянс. Цель пасьянса - составить Магический квадрат с стандартным набором костяшек домино.

Магический квадрат это числа расположенные в квадратной сетке, где сумма чисел в каждой строке, столбце и в диагоналях равно одному и тому же числу.
Костяшки домино состоят из двух цифр от 0 (пустая) до 6. Костяшки не имеют направления и 1-6 это тоже самое, что 6-1. Стандартный набор состоит из 28 разных костяшек - все комбинации пар цифр.

double-six double-six

Дан размер (size) магического квадрата и суммарное число (number). Вы должны составить магический квадрат данного размера, так чтобы строки, столбцы и диагонали были равны суммарному числу. Вы можете размещать костяшки домино только вертикально и так, чтобы они не повторялись.

Далее представлен пример размером (size) 4 и суммарных числом (number) 5:

square

Результат должен быть представлен, как как список/кортеж (list/tuple) списков/кортежей с целыми числами.

Входные данные: Два аргумента. Размер магического квадрата и требуемая сумма, как целые числа.

Выходные данные: Магический квадрат, как список/кортеж (list/tuple) списков/кортежей с целыми числами.

Примеры:

checkio(4, 5) == ((0, 0, 2, 3),
                  (0, 4, 1, 0),
                  (4, 0, 0, 1),
                  (1, 1, 2, 1))

Как это используется: Это задача удовлетворения ограничений и может пригодится вам при раскладывании пасьянса или при планировании.

Предусловия:
size in (4, 6)
Все тесты решаемы.