#P15781. [JAG 2025 Summer Camp #3] Grid Painting
[JAG 2025 Summer Camp #3] Grid Painting
说明
有一个 的网格,初始时每个单元格都被涂成白色。令 (,)表示从上往下第 行、从左往右第 列单元格的颜色。
你可以通过任意顺序、任意多次地重复以下两种操作来涂色网格。
操作 1: 仅当网格的最右列全为白色时,才能应用此操作。
首先,将整个网格循环右移一列(即,对于所有 ,,同时用 替换 )。
然后,选择 ,并将 涂成黑色。
操作 2: 仅当网格的最底行全为白色时,才能应用此操作。
首先,将整个网格循环下移一行(即,对于所有 ,,同时用 替换 )。
然后,选择 ,并将 涂成黑色。
给定执行若干次操作后的最终网格,请确定能够产生该网格的操作序列的数量。由于答案可能非常大,请输出其对 取模的结果。
如果两个操作序列长度不同,或者在任意步骤中移动方向或涂黑的区间不同,则认为它们是不同的。
:::align{center}
:::
输入格式
输入包含多个测试用例。
第一行包含一个整数 (),表示测试用例的数量。
接下来是 个测试用例。每个测试用例的格式如下:
$$\begin{aligned} & H \ W \\ & S_1 \\ & \vdots \\ & S_H \end{aligned}$$对于每个测试用例,第一行包含两个整数 ()和 (),分别表示网格的高度和宽度。
接下来的 行,每行包含一个长度为 的字符串 ,表示最终网格,仅由字符 ‘#’ 和 ‘.’ 组成。如果 的第 个字符是 ‘#’,则 为黑色;如果是 ‘.’,则为白色。
输出格式
每个测试用例输出一行:可能的操作序列数量对 取模的结果。
4
2 2
.#
##
2 3
...
...
3 4
#.#.
.#.#
#.#.
6 5
###..
###..
##.##
##.##
..###
..###
6
1
0
210
提示
翻译由 DeepSeek V3.2 完成
京公网安备 11011102002149号