#3838. 海报

海报

题目描述

墙上粘贴了 nn 个相同形状的矩形海报。

它们的边都是垂直或水平的。

每个矩形可以被其他矩形部分或完全覆盖。

所有矩形的并集边界的长度称为周长。

现在请你编程计算这个周长是多少。

图 1 显示了一个包含 7 个矩形的图形样例:

图 2 给出了它的并集边界:

每个矩形的顶点都有一个整数坐标。

输入格式

第一行输入整数n n,表示矩形的数量。

接下来 nn 行,每行四个整数x1,y1,x2,y2 x_1,y_1,x_2,y_2 用以描述一个矩形,(x1,y1x_1,y_1) 为矩形的左下角坐标,(x2,y2x_2,y_2) 为矩形的右上角坐标。

输出格式

输出一个整数,表示矩形并集的周长。

数据范围

0n<5000,10000xi,yi100000≤n<5000, −10000≤x_i,y_i≤10000

样例

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
228

来源

  • POJ1177
  • 算法竞赛进阶指南