Problem2671--棋盘问题

2671: 棋盘问题

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 0  Solved: 0
[Status] [Submit] [Creator:]

Description

在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放 k个棋子的所有可行的摆放方案 C。

Input

输入含有多组测试数据。
对于每组数据:
第一行是两个正整数n,k,用一个空格隔开。表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目k。(n≤8,k≤n)
接下来n行,每行n个字符,其中"#"表示棋盘区域,“.”表示空白区域。
当输入为“-1 -1”时,表示输入结束。


Output

对于每一组数据,输出一行,输出摆放的方案数目

Sample Input Copy

2 1
#.
.#
4 4
...#
..#.
.#..
#...
-1 -1

Sample Output Copy

2
1

Source/Category