printРабочее место участника

printЗадачи

1557. Домино на шахматной доске

Ограничения: время – 200ms/500ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Предположим, что у нас имеется шахматная доска и достаточное количество косточек домино, каждая величиной в две клетки доски (1x2). Поставим две пешки на противоположные угловые поля. Можно ли оставшуюся часть доски покрыть косточками домино, так чтобы ни одна косточка не вылезала за пределы доски и косточки не накладывались друг на друга? (Правильный ответ: нет)
Напишите программу, которая для любого количества и расположения пешек определяет число способов замощения доски косточками домино.
Во входном файле содержится 8 строк, в каждой строке по 8 символов. Свободная клетка обозначается символом '.' (точка), а занятая пешкой – символом '#'. Число пешек на доске не превышает 63.
В выходной файл вывести число различных способов замощения доски косточками домино. Так как шахматная доска имеет обозначения горизонталей и вертикалей, то различными являются и варианты, переходящие в друг друга при поворотах и зеркальном отражении.

Пример ввода 1

#.......
........
........
........
........
........
........
.......#

Вывод для примера 1

0

Пример ввода 2

....####
....####
########
########
########
########
########
########

Вывод для примера 2

5
loading