#P1486. Sorting Slides
Sorting Slides
题目描述
Clumsey教授今天下午要做一个重要的演讲。不幸的是,他不是一个很整洁的人,把所有的幻灯片都堆成了一大摞。在演讲之前,他必须把这些幻灯片排序。作为一个极简主义者,他希望用尽可能少的工作量来完成这项工作。
情况是这样的:所有幻灯片上都按演讲顺序写有数字。由于幻灯片互相叠放且是透明的,无法直接看出每个数字写在哪个幻灯片上。
虽然无法直接看到每个数字写在哪个幻灯片上,但可以通过推理判断每个数字对应的幻灯片。如上图所示,若将幻灯片标记为A、B、C……,显然D对应数字3,B对应数字1,C对应数字2,A对应数字4。
你的任务是编写一个程序,自动化完成这个推理过程。
输入
输入包含多个幻灯片堆的描述。每个描述的第一行是一个整数n,表示堆中幻灯片的数量。接下来n行,每行包含四个整数xmin、xmax、ymin、ymax,表示每张幻灯片的边界坐标。幻灯片按输入顺序标记为A、B、C……。
接下来n行,每行包含两个整数x和y,表示n个数字的坐标。第一对坐标对应数字1,第二对对应数字2,依此类推。所有数字的坐标都不在幻灯片的边界上。
输入以n=0的描述结束,该描述无需处理。
输出
对于每个输入的幻灯片堆描述,首先输出其编号。然后按字母顺序输出所有能唯一确定对应关系的幻灯片与数字的配对。
如果无法确定任何配对关系,输出“none”。
每个测试用例后输出一个空行。
输入样例
4
6 22 10 20
4 18 6 16
8 20 2 18
10 24 4 8
9 15
19 17
11 7
21 11
2
0 2 0 2
0 2 0 2
1 1
1 1
0
输出样例
Heap 1
(A,4) (B,1) (C,2) (D,3)
Heap 2
none
题目来源
1998年西南欧洲区域竞赛