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 自动生成**
输入格式
无
输出格式
无