#P14702. [Bulgarian2017]opc

    ID: 13918 传统题 2000ms 512MiB 尝试: 1 已通过: 1 难度: 6 上传者: 标签>CF1900扫描线线段树排序树状数组字符串

[Bulgarian2017]opc

题目描述

给定一个由若干矩形组成的岛国王国。王国只由岛屿和水域构成。

有些岛屿内部可能有湖泊,而有些湖泊内部又可能包含新的岛屿,如此嵌套下去。之所以称为“矩形王国”,是因为所有岛屿和所有湖泊的形状都是矩形。

国家被划分为若干个区域。每一块被水包围的陆地都算作一个区域。

原题在此处给出了两张示意图:

  • 图 1:王国平面图;
  • 图 2:同一平面图中,用颜色标出了陆地,并给各个区域编号。

给定王国的平面图,请编写程序 opc,求出区域的个数。

输入格式

第一行输入一个整数 N,表示平面图中的矩形个数。

接下来 N 行,每行输入四个整数 Xi, Yi, Wi, Hi,分别表示第 i 个矩形的左上角坐标,以及它的宽度(沿 X 轴方向)和高度(沿 Y 轴方向)。

保证任意两个矩形的边界都没有公共点。

坐标系为直角坐标系:从点 (0, 0) 出发,横坐标向东增大,纵坐标向南增大。

输出格式

输出一个整数,表示题目所求的区域数。

数据范围

  • 1 <= N <= 100000
  • 0 <= Xi, Yi, Wi, Hi <= 10^9

样例

输入

9
0 0 16 14
1 1 8 5
2 2 4 3
11 1 3 7
1 7 8 6
2 8 4 4
3 9 2 2
10 9 5 4
11 10 3 2

输出

4

样例说明

原题样例处给出了一张对应输入数据的网格示意图,用于展示各矩形在平面上的位置关系。

说明

50% 的测试点中:

  • N, Xi, Yi, Wi, Hi <= 1000