QOJ.ac

QOJ

実行時間制限: 3 s メモリ制限: 2048 MB 満点: 100

#14438. 备份塔

統計

Gridlandia 这个国家自然可以表示为一个房屋网格。

Gridlandia 计划在网格的某些点上安装若干个蜂窝基站。当居民连接蜂窝数据时,他们的手机会首先尝试连接到距离最近的基站,如果连接失败,则会尝试连接到距离第二近的基站。Gridlandia 政府担心某些基站的负载会比其他基站重得多。请通过计算每个房屋距离最近和第二近的基站来帮助他们,距离采用曼哈顿距离衡量,即行差的绝对值与列差的绝对值之和。

输入格式

第一行包含三个整数 $r, c$ ($1 \le r, c \le 500, r \cdot c \ge 2$) 和 $n$ ($2 \le n \le 2 \cdot 10^5$),其中 Gridlandia 是一个 $r$ 行 $c$ 列的网格,$n$ 是基站的数量。基站编号从 $1$ 到 $n$。

接下来的 $n$ 行,每行包含两个整数 $i$ 和 $j$ ($1 \le i \le r, 1 \le j \le c$),依次表示各基站的位置。每个 $(i, j)$ 坐标对都是唯一的。

输出格式

输出的前 $r$ 行,每行应包含 $c$ 个空格分隔的整数。第 $i$ 行第 $j$ 列的整数应为距离位置 $(i, j)$ 最近的基站编号(按曼哈顿距离计算)。

接下来的 $r$ 行,每行也应包含 $c$ 个空格分隔的整数。第 $i$ 行第 $j$ 列的整数应为距离位置 $(i, j)$ 第二近的基站编号(按曼哈顿距离计算)。

如果对于某个位置存在多个距离最近的基站,则输出编号最小的那一个。同样,如果存在多个距离第二近的基站,也输出编号最小的那一个。

样例

输入格式 1

4 8 3
1 1
4 1
2 6

输出格式 1

1 1 1 1 3 3 3 3
1 1 1 3 3 3 3 3
2 2 2 3 3 3 3 3
2 2 2 2 3 3 3 3
2 2 3 3 1 1 1 1
2 2 3 1 1 1 1 1
1 1 1 2 2 2 2 2
1 1 1 3 2 2 2 2

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.