CF1717B.Madoka and Underground Competitions

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Madoka and Underground Competitions

题目描述

Madoka 决定参加一个地下的体育编程比赛。比赛中恰好有一道题目:

一个大小为 n×nn \times n 的方阵,其中 nnkk 的倍数。我们称这个方阵是“好”的,如果它只包含字符 '.' 和 'X',并且对于任意大小为 1×k1 \times kk×1k \times 1 的子矩阵,至少有一个格子包含字符 'X'。换句话说,在任意连续的 kk 个竖直或水平格子中,至少有一个格子包含字符 'X'。

请输出任意一个“好”的方阵,并且要求字符 'X' 的数量尽可能少,同时第 rr 行第 cc 列的格子必须写有字符 'X'。行从上到下编号为 11nn,列从左到右编号为 11nn

输入格式

输入包含多组测试数据。第一行包含一个整数 tt1t1001 \le t \le 100),表示测试数据的组数。接下来每组测试数据占一行,每行包含四个整数 nnkkrrcc1n500,1kn,1r,cn1 \le n \le 500, 1 \le k \le n, 1 \le r, c \le n),分别表示方阵的大小 nn,整数 kk,以及必须包含 'X' 的格子的行列坐标 rrcc。保证 nnkk 的倍数。

保证所有测试数据中 nn 的总和不超过 500500

输出格式

对于每组测试数据,输出 nn 行,每行包含 nn 个字符 '.' 或 'X',表示满足要求的方阵。如果有多种答案,可以输出任意一种。

说明/提示

我们来分析第一个测试样例。

以下方阵可以作为正确答案输出:

X....X.X. 或 ..XX...X. 可以证明,答案中 'X' 的数量不能少于 33。注意,下面这个方阵是不合法的,因为第 (3,2)(3, 2) 个格子没有包含字符 'X':

X...X...X

在第二个测试样例中,唯一正确的方阵是:

XXXX

每个 1×11 \times 1 的子矩阵都必须包含 'X',因此方阵中所有格子都必须是 'X'。

由 ChatGPT 4.1 翻译

样例

3
3 3 3 2
2 1 1 2
6 3 4 2
X..
..X
.X.
XX
XX
.X..X.
X..X..
..X..X
.X..X.
X..X..
..X..X

在线编程 IDE

建议全屏模式获得最佳体验