翻译差评
查看原帖
翻译差评
637788
kimi0705楼主2024/7/26 20:02

题目中 您可以将 X 更改为 O,或将 O 更改为 X。

**简单版本和困难版本之间的唯一区别是 O 类型的标记不会出现在简单版本的输入中。**

Errichto 向 Monogon 提出了以下挑战,目的是阻止他夺得 Codeforces 的顶级贡献者位置。

在井字棋网格中,有 $n$ 行和 $n$ 列。网格的每个单元格要么是空的,要么包含一个令牌。有两种类型的令牌:X 和 O。如果一行或一列中连续存在三个相同类型的令牌,则为获胜配置。否则,为平局配置。

在操作中,您可以将 X 更改为 O,或将 O 更改为 X。让 $k$ 表示网格中的标记总数。您的任务是使网格在最多 $\lfloor \frac{k}{3}\rfloor$ (向下舍入)次操作中呈现 **绘制**。

您**不需要**尽量减少操作次数。

### input
第一行包含一个整数 $t$ ( $1\le t\le 100$ ) — 测试用例的数量。

每个测试用例的第一行包含一个整数 $n$ ( $1\le n\le 300$ )——表示网格的大小。

接下来的 $n$ 行每行包含一个 $n$ 个字符的字符串,表示初始网格。如果单元格为空,则第 $i$ 行和第 $j$ 列中的字符为 '.',否则为单元格中的标记类型:'X' 或 'O'。

保证并非所有单元格都是空的。

在简单版本中,字符“O”不会出现在输入中。

所有测试用例的 $n$ 总和不超过 $300$ 。

### output
对于每个测试用例,应用操作后打印网格的状态。

我们已经证明总有一个解决方案。如果有多个解决方案,请打印任意一个。

## 提示
在第一个测试用例中,第二行第二列最初有三个连续的“X”。通过将中间的标记更改为“O”,我们使网格平局,并且我们只更改了 $1\le \lfloor 5/3\rfloor$ 标记。

在第二个测试用例中,我们仅更改 $9\le \lfloor 32/3\rfloor$ 个 token,并且行或列中不存在连续的三个 'X' 或 'O',因此平局。

在第三个测试用例中,我们只更改 $3\le \lfloor 12/3\rfloor$ 个标记,得到的网格是平局。
2024/7/26 20:02
加载中...