网站页面
当前课程
成员
General
主题 1
主题 2
主题 4
主题 5
主题 6
主题 7
主题 8
主题 9
主题 10
主题 11
主题 12
主题 13
主题 14
主题 15
主题 16
主题 17
主题 18
主题 19
主题 20
图形
成绩 | 0 | 开启时间 | 2013年01月22日 星期二 13:25 |
折扣 | 0.8 | 折扣时间 | 2013年01月22日 星期二 13:25 |
允许迟交 | 是 | 关闭时间 | 2013年01月22日 星期二 13:25 |
输入文件 | tx.in | 输出文件 | tx.out |
一些矩形的海报、照片或其他同样形状的图片被张贴在墙上。它们的边都是垂直或水平的。每个矩形可以部分或全部覆盖其它矩形。所有矩形组成的集合的边界称为周界。
[ 任务描述 ] :
写一个程序计算周界。
下图是一个有 7 个矩形的例子。
Figure 1. 一个 7 个矩形的集合
对应的周界为如图 2 所示所有线段的集合。
Figure 2. 矩形集合的周界
所有的矩形的坐标都是整数。
[ 输入数据 ] :
文件 PICTURE.IN 的第一行张贴在墙壁上的矩形图片的数目。在随后的行中,每行有两个点的坐标,分别为某一个矩形的左下角和右上角的坐标。每一个坐标由 X 坐标与 Y 坐标组成。
样例输入:
7
-15 0 5 10
-5 8 20 25
15 -4 24 14
0 -6 16 4
2 15 10 22
30 10 36 20
34 0 40 16
对应着图 1 的例子。
[ 输出数据 ] :
文件 PICTURE.OUT 包含一行,为一个非负整数,表示输入数据中所有矩形集的周界。
样例输出:
228
[ 限制 ] :
0 <= 矩形数 < 5000
所有坐标在 [-10000,10000] 内,结果的值可能需要 32 位有带符号表示。