#SFJSJJZN3125. 「Picture」 海报

    ID: 937 传统题 1000ms 128MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>来源算法竞赛进阶指南数据结构线段树扫描线3

「Picture」 海报

题目描述

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

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

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

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

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

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

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

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

输入格式

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

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

输出格式

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

数据范围

0n<50000 \le n < 5000, 10000xi,yi10000-10000 \le x_i,y_i \le 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

来源

  • 《算法竞赛进阶指南》
  • acwing 可能含有视频讲解