SZC2026#913. 图像模糊处理

提交0 通过0
通过率0%
时间限制1000ms
内存限制256MiB

题目描述

题目背景

一幅灰度图像可以表示成一个整数矩阵。矩阵中的每个数是对应像素的灰度值,数值越大通常表示像素越亮。现在要用相邻像素的灰度值对图像进行一次简单的模糊处理。

题目描述

给定一个 nnmm 列的灰度矩阵。处理规则如下:

  1. 位于最上方、最下方、最左侧或最右侧的像素保持原值不变;
  2. 对于不在边界上的像素 (i,j)(i,j),取原图中的五个灰度值:当前位置、上方、下方、左方和右方;
  3. 将这五个数的平均值四舍五入到最接近的整数,作为 (i,j)(i,j) 的新灰度值。

所有新灰度值必须根据处理前的原图计算,不能使用已经更新过的值。如果图像没有内部像素,例如只有一行或一列,则整幅图像保持不变。

输入格式

第一行两个整数 n,mn,m,表示图像的行数和列数。

接下来 nn 行,每行 mm 个整数。第 ii 行第 jj 个整数表示像素 (i,j)(i,j) 的原始灰度值。

输出格式

输出 nn 行,每行 mm 个整数,表示模糊处理后的灰度矩阵。每行相邻的两个整数之间用一个空格分隔。

数据范围与约定

  • 1n,m1001\le n,m\le 100
  • 每个灰度值都在 00255255 之间;
  • 平均值按照通常的四舍五入规则取整。

样例输入

3 3
0 0 0
0 255 0
0 0 0

样例输出

0 0 0
0 51 0
0 0 0

样例说明

只有中心像素需要重新计算。它与上下左右四个像素之和为 255255,平均值为 255÷5=51255\div5=51