Problem C: 摆放棋子
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:104
Solved:44
Description
在一个给定 n*n的棋盘上面摆放棋子,要将棋子摆放在 # 位置处,还要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定n*n的棋盘,摆放k个棋子的所有可行的摆放方案共有多少?
Input
输入的第一行是两个正整数 n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目k。( n < 10 , k <= n)
随后的n行描述了棋盘:每行有n个字符,其中 # 表示放棋子区域,大写字母C 表示空白区域(数据保证不出现多余的空白行或者空白列)。
随后的n行描述了棋盘:每行有n个字符,其中 # 表示放棋子区域,大写字母C 表示空白区域(数据保证不出现多余的空白行或者空白列)。
Output
输出一个正整数,表示摆放的方案数目。此数据保证 <2^31。
Sample Input Copy
4 3
CCC#
#CC#
C#CC
#CCC
Sample Output Copy
3
HINT
# 表示放棋子区域,大写字母C 表示空白区域。
n < 10 , k <= n 。
输出数据 <2^31。
n < 10 , k <= n 。
输出数据 <2^31。