检测到 KaTeX 加载失败,可能会导致文中的数学公式无法正常渲染。
#题面
#题目描述
小 L 准备建一个牧场在里面放羊。他指定了一些他想围住的矩形草坪。他想知道把这些草坪围起来需要多长的栏杆。
例如,选取图一的草坪,栏杆将围成图二的样子。
▲ 图 1
▲ 图 2
#输入格式
输入文件的第一行是一个整数 ,表示有多少个矩形。
接下来 行给出了每一个矩形左下角坐标 和右上角坐标 。
#输出格式
一个正整数,表示所有矩形的周长
#输入输出样例
样例输入 #1
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
样例输出 #1
228
#数据范围与约定
数据点 | 特殊性质 | 时间限制 | |
---|---|---|---|
1 | 无 | 1s | |
2 | |||
3 | |||
4 | |||
5 | |||
6 | 无 | ||
7 | |||
8 | 1.5s | ||
9 | 无 | ||
10 |
对于 的数据,满足 。
#思路
很容易想到可以在横向和纵向上各使用一次扫描线来计算周长。
可以发现增加一条边后会引起总和改变,总和的改变量就是新增的边长,而没改变的部分则是被已存在图形覆盖掉的,无需统计。
最后将横向上的边长和与纵向上的边长和相加即为图形总周长。
#代码
1 |
|