7273. 网格填补 (Grid Completion)
时间限制:1000 MS 内存限制:256 MB
题目描述
时间限制:1.00 s 空间限制:512 MB ## 题目描述 你的任务是补全一个 $n \times n$ 的网格,使得其每一行和每一列都恰好包含一个字符 `A` 和一个字符 `B`。一些字符已经提前被放置。问有多少种不同的方式来补全该网格? ## 输入格式 输入的第一行包含一个整数 $n$:网格的大小。 接下来有 $n$ 行描述网格。每行包含 $n$ 个字符:`.` 表示空方格,`A` 和 `B` 表示已经放置的字符。 你可以假设每一行和每一列最多只包含一个 `A` 和一个 `B`。 ## 输出格式 输出一个整数:补全网格的方案数对 $10^9+7$ 取模后的结果。 ## 输入输出样例 ### 输入 #1 ```text 5 ..... ..AB. ..... B.... ...A. ``` ### 输出 #1 ```text 16 ``` ## 说明/提示 ### 数据规模与约定 * $2 \le n \le 500$