Кодовый замок
시간 제한2초메모리 제한1024 MB
최대 30×30 격자에서 변을 공유해 연결된 k개 버튼 칸 부분집합의 개수를 센다. k는 10 이하이다.
문제
Компания <<Замки и замки>> недавно разработала новый тип кодового замка, для размещения на воротах замков. Панель замка представляет собой прямоугольник шириной ячеек и высотой ячеек. В некоторых из них расположены кнопки.
Код на этом замке вводится одновременным нажатием кнопок. Для того, чтобы код было легче запомнить, используемые в нем кнопки должны образовывать связную область. Область называется связной, если из любой клетки области можно добраться до любой другой, перемещаясь только между клетками этой области с общей стороной. Важным критерием надежности замка является число различных кодов, которые на нем можно набрать.
Для оценки надежности замков требуется написать программу для вычисления указанной величины.
입력
В первой строке входного файла находятся три целых числа , и (; ). Каждая из последующих строк содержит символов. Символ <<#>> обозначает кнопку, а <<.>> --- ее отсутствие.
출력
В выходной файл выведите единственное число --- количество кодов, удовлетворяющих указанным требованиям.
힌트
На рисунке изображен один из возможных кодов для второго примера.
