AT_stpc2025_2_m Take K

题目描述

有一个 $H$ 行 $W$ 列的网格。第 $i$ 行第 $j$ 列的格子记作 $(i,j)$。 每个格子可能是障碍物、被涂成黑色或被涂成白色。网格的状态通过 $H$ 个长度为 $W$ 的字符串 $S_1,S_2,\dots,S_H$ 给出。如果 $S_i$ 的第 $j$ 个字符为 `#`,则格子 $(i,j)$ 上有障碍物;若为 `B`,则格子 $(i,j)$ 被涂成黑色;若为 `W`,则被涂成白色。 你可以任选一个**黑色格子**作为起始点,并从那里不断移动。每次移动可以从当前所在格子移动到上下左右相邻的黑色或白色格子。 请判断是否能够在满足以下条件的情况下移动 $10^{100}$ 次: - 经过第 $x\ (1 \leq x \leq 10^{100})$ 次移动后所处的格子,在 $x \equiv 0 \pmod K$ 时必须是黑色,否则是白色。

输入格式

输入如下形式给出。 > $H$ $W$ $K$ > $S_1$ > $S_2$ > $\vdots$ > $S_H$

输出格式

如果可以满足条件并移动 $10^{100}$ 次,输出 `Yes`,否则输出 `No`。

说明/提示

### 样例解释 1 选择格子 $(1,1)$ 开始移动。按照 $(1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) \rightarrow (1,3) \rightarrow (1,2) \rightarrow (1,3) \rightarrow \cdots$ 的顺序移动,可以始终满足题目条件地移动 $10^{100}$ 次。 ### 数据范围 - $H, W, K$ 为整数。 - $1 \leq H, W$ - $H \times W \leq 10^6$ - $2 \leq K \leq 10^9$ - $S_i$ 由 `#`, `B`, `W` 组成,长度为 $W$。 - $S_1,S_2,\dots,S_H$ 至少有一个包含 `B`。 由 ChatGPT 5 翻译