#P12835. 地图编辑器

地图编辑器

地图编辑器

Problem Description

你正在实现一款简易的地图编辑器软件。 在这款简易地图编辑器中,树的形状只有一种,如下图所示,其中 “X\texttt{X}” 为树的图块,“.\texttt{.}” 为透明图块,第 5 行第 3 列为树根:

$$\texttt{..X..}\\ \texttt{.XXX.}\\ \texttt{XXXXX}\\ \texttt{..X..}\\ \texttt{..X..} $$

新建一张 n×mn\times m 的地图时,所有格子都是空地,优先级为 0,空地也用 “.\texttt{.}” 表示。地图由 n×mn\times m 个格子组成,从上到下依次为第 1,2,,n1,2,\dots,n 行,从左到右依次为第 1,2,,m1,2,\dots,m 列。接下来,用户将往地图上放置 kk1k91\leq k\leq 9)棵树。第 ii1ik1\leq i\leq k)次放置操作中,用户将选中地图内的格子(xi,yix_i,y_i),将其作为第 ii 棵树的树根的位置,这棵树所有非透明图块均用数字 ii 表示,优先级均为 xix_i。 你的任务是根据放置信息绘制出地图,每个位置仅需展示优先级最高的图块,并请忽略所有超出地图范围的图块。

Input

第一行包含一个正整数 TT1T101\leq T\leq 10),表示测试数据的组数。 每组数据第一行包含三个正整数 n,m,kn,m,k1n,m101\leq n,m\leq 10, 1k91\leq k\leq9),分别表示地图的尺寸以及树的数量。 接下来 kk 行,每行两个正整数 xi,yix_i,y_i1xin1\leq x_i\leq n, 1yim1\leq y_i\leq m),依次表示每棵树的树根位置。 输入数据保证不会有两棵树位于同一行。

Output

对于每组数据输出 nn 行,每行一个长度为 mm 的字符串,从上到下表示地图。

Sample Input

2
7 7 3
4 5
6 4
3 1
3 4 1
3 2

Sample Output

333111.
3.12111
3.222..
.22222.
...2...
...2...
.......
1111
.1..
.1..

Source

2025“钉耙编程”中国大学生算法设计暑期联赛(7)