题单练习 并查集

A2058 | 矩形

来源省选 / 2010
时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

现在我们在一个平面上画了n个矩形。每一个矩形的两边都与坐标轴相平行,且矩形定点的坐标均为整数。现我们定义满足如下性质的图形为一个块:

1.每一个矩形都是一个块;

2.如果两个块有一段公共的部分,那么这两个块就会形成一个新的块,否则这两个块就是不同的。

示例:

图1中的矩形形成了两个不同的块。图2中的矩形形成了一个块。





任务:

请写一个程序:

1.从文本文件PRO.IN中读入各个矩形的顶点坐标;

2.找出这些矩形中不同的块的数目;

3.把结果输出到文本文件PRO.OUT中。

输入格式

文本文件PRO.IN的第一行包括一个整数n,1  n  7000,为矩形的数目。以下的n行为矩形顶点的坐标。每一个矩形都是用四个整数来描述的:左下角的x坐标、左下角的y坐标、右上角的x坐标和右上角的y坐标。所有的坐标都是不大于10000的非负整数。

输出格式

在文本文件PRO.OUT中输出唯一的一个整数——这些矩形所形成的不同的块的数目。

输入输出样例

输入 #1
9
0 3 2 6
4 5 5 7
4 2 6 4
2 0 3 2
5 3 6 4
3 2 5 3
1 4 4 7
0 0 1 4
0 0 4 1
输出 #1
2
C++ 编辑器
输入
输出