C. 表格整理

    传统题 1000ms 256MiB

表格整理

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

小杨有一张 HH 行 WW 列的大表格,其中一些格子里写有数字,其余格子都是空的。

小杨想要整理这张表格:

  1. 把所有完全没有数字的行删除;
  2. 把所有完全没有数字的列删除;
  3. 把剩下的行按原来从上到下的顺序重新编号为 1,2,3,…1, 2, 3, \ldots;
  4. 把剩下的列按原来从左到右的顺序重新编号为 1,2,3,…1, 2, 3, \ldots。

请你帮小杨计算:给定的每个写有数字的格子,在整理后的新表格中分别位于第几行第几列。

输入格式

输入共 N+1N + 1 行。

第一行为三个整数 H,W,NH, W, N,分别表示表格的行数、列数和给定格子的个数。

接下来 NN 行,每行两个整数 ai,bia_i, b_i,表示第 ii 个写有数字的格子在原表格中的行号和列号(同一个格子可能被多次给出)。

输出格式

输出共 NN 行,每行两个整数,第 ii 行表示第 ii 个给定的格子(即第 ii 行的 ai,bia_i, b_i)在整理后的新表格中的行号和列号。

样例

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

样例解释

样例 1 中,有数字的行是第 2,3,42, 3, 4 行,重新编号为 1,2,31, 2, 3;有数字的列是第 2,3,4,52, 3, 4, 5 列,重新编号为 1,2,3,41, 2, 3, 4。因此 (2,2)→(1,1)(2,2) \to (1,1),(2,4)→(1,3)(2,4) \to (1,3),(3,3)→(2,2)(3,3) \to (2,2),(4,5)→(3,4)(4,5) \to (3,4)。

样例 2 中,有数字的行是第 1,2,31, 2, 3 行,重新编号为 1,2,31, 2, 3;只有第 55 列有数字,重新编号为 11。因此三个格子分别变为 (1,1)(1,1)、(2,1)(2,1)、(3,1)(3,1)。

数据范围与约定

子任务 分值 限制
11 77 H,W≤1000H, W \leq 1000
22 88 N≤1000N \leq 1000
33 1010 无特殊限制

对于 100%100\% 的数据,保证 1≤N≤1051 \leq N \leq 10^5,1≤H,W≤1091 \leq H, W \leq 10^9,1≤ai≤H1 \leq a_i \leq H,1≤bi≤W1 \leq b_i \leq W。

三三信奥第二场 GESP 4级 模拟赛 ✅

未参加
状态
已结束
规则
OC 赛制
题目
3
开始于
2026-9-5 18:00
结束于
2026-9-11 18:00
持续时间
2 小时
主持人
参赛人数
12