洛谷P2449《[SDOI2005]矩形》
十一月 05, 2019
732
真就正解是暴力呗
题目描述
现在我们在一个平面上画了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中输出唯一的一个整数——这些矩形所形成的不同的块的数目。
解析
考试题
当时看到这题发现自己只会 ,最后拿了 54pts
考试结束看了一眼洛谷题解,发现这玩意真就是个暴力。。。自己写丑了才少拿了分
具体就是 枚举所有的矩形,判断是否是一个联通块,是就用并查集把编号连起来,时间复杂度
代码实现
这里不给出代码,原因是洛谷数据过水导致我的 AC 代码可以被 Hack 掉。。找个时间再放上来吧
- 本文作者:Handwer STD
- 本文链接:https://blog.handwer-std.top/2019-11-05/Luogu-P2449/index.html
- 版权声明:本博客所有文章均采用 BY-NC-SA 许可协议,转载请注明出处!