#P1246. 图像渲染

图像渲染

题目描述

有一幅以n×m的二维整数数组表示的图画A,其中A[i][j]表示该图画的像素值大小。

已知三个整数sr,sc和newColor。你从像素image[sr][sc]开始对图像进行上色填充。

为了完成上色工作,从初始像素开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点,……,重复该过程。将所有有记录的像素点的颜色值改为newColor。最后返回经过上色渲染后的图像。


输入格式

第一行n、m(1≤n, m≤100)、sr、sc(1≤sr≤n, 1≤sc≤m)和newColor(0≤newColor≤2);

后面n行,每行m个整数,代表A[i]j

输出格式

一个n×m的二维数组,表示渲染后的图画。


输入/输出样例

3 3 1 1 2
111
110
101
222
220
201

样例解释

image

图像的左上角是起始点,坐标(sr,sc)=(1,1),在路径上所有符合条件的像素点的颜色都被更改成2。

注意,右下角的像素没有更改为2,因为它不是在上下左右四个方向上与初始点相连的像素点。


说明/提示

时间1000ms,内存256MiB