#2193. 重排卡片Reorder Cards

重排卡片Reorder Cards

题目描述

有一个H行W列的网格,上面排列着HW张卡片。对于每个i(1≤i≤N),位于从上数第AiA_i行、从左数第BiB_i列的卡片上写有数字i。其他的HW-N张卡片上没有写任何数字。 你可以对卡片进行以下两种操作,只要可能就一直重复:

  1. 如果存在没有数字卡片的行,则移除该行的所有卡片,并将剩余的卡片向上移动填补空缺。
  2. 如果存在没有数字卡片的列,则移除该列的所有卡片,并将剩余的卡片向左移动填补空缺。 找出在上述过程结束后,每张数字卡片的位置。可以证明,这些位置是唯一确定的,与操作的顺序无关。

输入格式

输入由标准输入提供,格式如下:

H W NH\ W \ N

A1 B1A_1\ B_1

...

AN BNA_N \ B_N

输出格式

输出N行。 如果在处理结束后,编号为i的卡片位于距离顶部第𝐶𝑖行、距离左侧第𝐷𝑖列,第𝑖行应按照𝐶𝑖和𝐷𝑖的顺序以一个空格分隔输出。

4 5 2
3 2
2 5
2 1
1 2

问题解释*表示没有写数字的卡片。最初,卡片的配置如下:

*****
**2**
*1***
*****

操作结束后,卡片的配置将如下所示:

*2
1*

数字1的卡片位于从上数第2行、从左数第1列,数字2的卡片位于从上数第1行、从左数第2列。

1000000000 1000000000 10
1 1
10 10
100 100
1000 1000
10000 10000
100000 100000
1000000 1000000
10000000 10000000
100000000 100000000
1000000000 1000000000
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10

这个题目要求你根据给定的规则计算出卡片最终的排列位置,是一个典型的逻辑推理和模拟问题。

【数据范围】

  • 所有的输入值都是整数。
  • 1H,W1091≤H,W≤10^9
  • 1Nmin(105,HW)1≤N≤min(10^5,HW)
  • 1AiH1≤A_i≤H
  • 1BiW1≤B_i≤W
  • 在输入中,(Ai,Bi)(A_i,B_i)是互不相同的。