AT_abc460_d [ABC460D] Repeatedly Repainting
题目描述
有一个 $H$ 行 $W$ 列的网格,其中第 $i$ 行第 $j$ 列的单元格被称为单元格 $(i,j)$。
所有单元格都被涂上了黑白两种颜色,网格被描述为 $H$ 个长度为 $W$ 的字符串 $S_1,S_2,...,S_H$。如果 $S_i$ 的第 $j$ 个字符为 `.`,则单元格 $(i,j)$ 为白色;如果 $S_i$ 的第 $j$ 个字符为 `#`,则单元格 $(i,j)$ 为黑色。
你需要执行 $10^{100}$ 次操作。
- 规则同时适用于所有单元格。
- 对于一个白色的单元格,当且仅当它相邻的单元格中有一个是黑色,它就会变成黑色。这里的“相邻”指的是一个单元格 $(x^\prime,y^\prime)$ 在另一个单元格 $(x,y)$ 的 $8$ -邻域上,也就是说,$\max(|x-x^\prime|,|y-y^\prime|)=1$。
- 对于一个黑色的单元格,它会变成白色。
求操作后所有单元格的颜色情况。
输入格式
输入以如下格式给出。
> $H$ $W$ $S_1$ $S_2$ $...$ $S_H$
输出格式
输出 $H$ 行,每行一个长度为 $W$ 的字符串,由 `.` 和 `#` 组成,表示 $10^{100}$ 次操作后网格的颜色情况。
如果单元格 $(i,j)$ 为白色则在第 $i$ 行第 $j$ 列输出 `.`,如果为黑色则在第 $i$ 行第 $j$ 列输出 `#`。
说明/提示
### 样例 1 解释
初始网格如下:

经过 $1$ 次操作后,网格如下:

经过 $10^{100}$ 次操作后,网格如下:

### 数据范围
- $1\leq H\times W\leq10^6$
- $H$ 和 $W$ 为正整数。
- $S_i$ 为长度为 $W$ 的字符串,由 `.` 和 `#` 构成。