SP10346 DISTO - Streets of distortion

题目描述

有一天,Eloy 字节正在矩阵形大城市的 (1,1) 方格中行走。就在他计划去 (N,N) 方格看望妈妈的时候,不幸的是,几颗陨石突然坠落在城市里,打破了平静!每个字节都无所适从……Eloy 迅速发现了一个奇特的现象:陨石造成的扭曲效果使得城市街道里的字符被乘上一个称为“扩张系数”的值。Eloy 已经掌握了矩阵里的所有信息以及陨石坠落的具体位置,请利用这些信息计算出陨石影响后的城市矩阵。 补充信息:矩阵中每个初始位置上的字符都是 ASCII 范围内的字符,从 '!' 到 '}'(对应的 ASCII 编号从 33 到 125)。 陨石的影响(即“扩张”)系数从 5 开始,随着距离的增加逐渐减少,每次减少 1,直到最低为 1。该系数将乘上矩阵中的字符值。示例:如果陨石在 (3,3) 位置坠落,字符 'c' (ASCII 为 99) 将被乘上 5,结果是 495。然而,在 Eloy 所在的数字世界中,这个结果将被转化为不同的字符输出。详细输出规则如下。 **输入格式:** 输入的第一行包含两个整数 $N$ 和 $K$: - $N$ 表示矩阵的大小(矩阵为 $N \times N$)。($3 \leq N \leq 500$) - $K$ 表示坠落在城市中的陨石数量。($1 \leq K \leq 50$) 接下来的 $N$ 行每行包含 $N$ 个字符,每个字符用一个空格隔开,表示矩阵的内容。 接下来的 $K$ 行每行包含两个整数 $(K_i, K_j)$,表示第 $K_n$ 个陨石坠落的坐标。 **输出格式:** 输出处理后的矩阵,每行包含 $N$ 个字符,每个字符用空格隔开。由于扩张系数可能导致数值超出范围,对于每个影响后的数值,将其取模 93 后加 33,转换为对应的字符输出(这样所得数值范围为 33 到 125,对应可打印的 ASCII 字符),最后输出转换字符。 **样例 1:** **输入:** ``` 3 1 a a a b b b c c c 2 2 ``` **输出:** ``` 1 1 1 5 : 5 9 9 9 ``` **解释:** 在位置 (2,2) 的字符原始值为 98,经过 5 倍缩放变为 490,再将其调整至 33 到 125 的范围,得到 58,ASCII 转换为 “:”。 扩展效果会传播至所有相邻单元,包括对角线方向。 **样例 2:** **输入:** ``` 6 1 a a a a a a b b b b b b c c c c c c d d d d d d e e e e e e f f f f f f 1 6 ``` **输出:** ``` % % ) - 1 5 & & + 0 5 5 ' ' - 3 3 3 ( ( / / / / ) ) ) ) ) ) * * * * * * ``` 注意:如果多颗陨石的影响区域重叠,应使用扩张系数较高的影响结果。 **本翻译由 AI 自动生成**

输入格式

输出格式