题目描述
你一定用过画图软件的一键填充功能吧?如果拓展到像素层面中,如果一个大连通块内所有像素的颜色相同,那么将一个像素染色,那么整个连通块内的所有像素都会被染色。
现在给定一个 R×S 的像素图,给定 Q 个染色操作:
- 将 (ri,si) 染为颜色 ci。
求染色过后的整个像素图。
输入格式
第一行两个整数 R,S 代表像素图大小。
接下来 R 行每行 S 个整数,代表像素图的初始颜色。
第 R+2 行一个整数 Q 代表操作个数。
接下来 Q 行每行三个整数 ri,si,ci 代表一次染色操作。
输出格式
R 行每行 S 个整数代表染色后的像素图。
提示
样例 1 解释
假设 0 为白色,1 为红色,2 为蓝色,3 为绿色,4 为黄色,那么如下图所示:

数据规模与约定
本题采用捆绑测试。
- Subtask 1(8 pts):1≤R×S≤104,1≤Q≤104。
- Subtask 2(9 pts):R=1,1≤S≤2×105,1≤Q≤105。
- Subtask 3(31 pts):1≤R×S≤2×105,1≤Q≤105,颜色只有 0 和 1。
- Subtask 4(52 pts):1≤R×S≤2×105,1≤Q≤105。
对于 100% 的数据,1≤ri≤R,1≤si≤S,0≤ci≤105,颜色区间为 [0,105]。
说明
翻译自 Croatian Olympiad in Informatics 2020 A Paint。