3984: 中山市第十二届义务教育段学生信息学邀请赛入围赛:宝石迷阵(bejewel)

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:54 Solved:9

Description

【问题描述】
Jimmy 正在玩一个叫“宝石迷阵”的游戏。游戏会给出一个 H 行 W 列的格子图,而其中某些格子上各有一颗宝石,其余格子则是各种各样的水果。
“宝石迷阵”游戏的规则是这样的:Jimmy 每次可以选择一行或者一列全是水果(换句话说就是没有宝石)的格子,然后发动法术消除它们,并获得一个固定的分数。如果 Jimmy选择消除一行格子,那么下方的格子会自动往上移动,补上空位;同理,如果消除的是一列格子,那么右侧的格子会往左补上空位。Jimmy 可以随时结束游戏,这时游戏会统计有多少个宝石连成一片,连成片的宝石数量越多,Jimmy 获得的分数就会越高。
Jimmy 当然想获得尽可能多的分数,于是他每盘游戏都会消除所有可以消除的格子。现在 Jimmy 要告诉你格子图上那些宝石的初始位置,他想知道的是每颗宝石的最后位置,这样方便他计算自己的最终得分。
【输入格式】
第一行三个整数 H, W, C,分别为格子图的行数和列数、以及图上宝石的数量。
接下来 C 行,每行两个整数 xi , yi,表示第 i 颗宝石在格子图的第 xi 行和第 yi 列上。
【输出格式】
输出共 C 行,每行两个整数 Xi , Yi,表示经过消除后,输入中的第 i 颗宝石在最终格子
图的第 Xi 行和第 Yi 列上。

Input

第一行三个整数 H, W, C,分别为格子图的行数和列数、以及图上宝石的数量。
接下来 C 行,每行两个整数 xi , yi,表示第 i 颗宝石在格子图的第 xi 行和第 yi 列上。

Output

输出共 C 行,每行两个整数 Xi , Yi,表示经过消除后,输入中的第 i 颗宝石在最终格子
图的第 Xi 行和第 Yi 列上。

Sample Input Copy

4 5 2
3 2
2 5

Sample Output Copy

2 1
1 2

HINT

【样例 1 解释】
没有消除之前的格子图如下所示(其中 . 表示水果,数字 i 表示输入的第 i 颗宝石): 
 ....2
 .1...
 .....

Jimmy 使用 5 次消除法术后的格子图如下所示:

1 .2

2  1. 

因此,输入的第 1 颗宝石最终在第 2 行第 1 列,第 2 颗宝石最终在第 1 行第 2 列。 

【测试点约束】
对于 30% 的数据,保证 1 ≤ C ≤ 3000;
对于 100% 的数据,保证:
• 1 ≤ H, W ≤ 109
• 1 ≤ C ≤ min(HW, 105 )
• 1 ≤ xi ≤ H
• 1 ≤ yi ≤ W
• 保证给出的 C 颗宝石位置互不相同。