Description
给你一个 NxN 的矩阵 S, i表示行, j表示列,# 表示 Si,j是黑色,.表示 Si,j是白色。
你需要选择 K个白色的点将它们涂成红色,并且要求这 K个红色的点必须连通,即每个红色点的上下左右至少相邻一个其他的红色点。
问你一共有多少种涂色方案。
Input
第一行输入一个整数 N(1≤N≤8),表示矩阵的大小。
接下来输入一个整数 K(1≤K≤8),表示需要将白色点涂成红色的个数。
接下来 N行,每行输入 N个整数 Si,1,Si,2,...,Si,N,表示矩阵。
HINT
样例二:
输入:
2
2
#.
.#
输出:
0
样例三:
输入:
8
8
........
........
........
........
........
........
........
........
输出:
64678
样例:
sample.zip
数据范围
-
N表示矩阵的大小,满足 1≤N≤8。
-
K表示需要将白色点涂成红色的个数,满足 1≤K≤8。
-
Si,j表示矩阵的元素,满足 Si,j∈{'#', '.'}。