画笔 / Kist
时间限制:1秒 内存限制:256M
题目背景
本题满分 \(50\)。
题目描述
Ivo 位于一个 \(n \times n\) 的方阵中(\(n\) 为奇数),手里拿着一把“厚度”为 \(k\) 的魔法画笔。初始时,矩阵的每个格子都标记为字符 .,并且 Ivo 在矩阵的中心格。
Ivo 收到一个由大写英文字母组成的指令串。他按顺序执行每个字符代表的一条指令,规则如下:
L:向左移动 \(1\) 格R:向右移动 \(1\) 格U:向上移动 \(1\) 格D:向下移动 \(1\) 格- 若当前字符是其他任意大写字母:Ivo 不移动,而是用该字母作为“颜色”,将所有与当前位置距离 严格小于 \(k\) 的格子染成该颜色,无论之前是否被染过(即新的颜色会覆盖原有的颜色)。
若某次移动会使 Ivo 走出矩阵,则**跳过**该步(位置不变),继续执行后续指令。
两个格子的“距离”定义为:只能上下左右移动,从一个格子走到另一个格子所需的最少步数(即曼哈顿距离)。
输入格式
第一行包含两个自然数 \(n, k\)(\(1 \le n, k \le 50\))。
第二行包含一个由大写英文字母组成的字符串,长度 \(\le 50\)。
输出格式
输出 \(n\) 行,每行包含 \(n\) 个字符,表示 Ivo 执行完全部指令后的矩阵状态。
输入输出样例 #1
输入 #1
1 1
ALURDF
输出 #1
F
输入输出样例 #2
输入 #2
3 2
LUUADDRCRB
输出 #2
AA.
ACB
CBB
说明/提示
【样例解释】
样例 #1 解释:由于矩阵只有一个格子,Ivo 永远不会离开该格子,只会不断给该格子上色。最终颜色为 F。
【子任务】
| 子任务 | 分值 | 限制 |
|---|---|---|
| \(1\) | \(2\) | \(n = 1\) |
| \(2\) | \(10\) | \(k = 1\) |
| \(3\) | \(15\) | \(k = 2\) |
| \(4\) | \(23\) | 无额外限制 |
信息
- ID
- 1075
- 难度
- (无)
- 分类
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 被复制
- 1
- 上传者