#P16165. [Ncpc2024]Fence Fee围栏补贴
[Ncpc2024]Fence Fee围栏补贴
题目描述
国家农作物保护委员会(NCPC)会按照农田面积向当地农民发放补贴。
每位农民可能拥有若干块农田。每块农田都是一个多边形区域,由若干围栏线段围成;围栏只会在端点处相交。
为了鼓励形状更规整、包围效果更好的农田,NCPC 决定按每块农田面积的平方发放补贴。现在需要编写一个工具,计算所有由围栏形成的农田区域的面积平方和。
输入格式
第一行包含一个整数 ,表示围栏线段数量。
接下来 行,每行包含四个整数 ,表示一段从 到 的直线围栏。
保证:
- 任意两条围栏线段不会相交,除非在公共端点处相接;
- 每一段围栏都是必要的,并且都用于围成农田;
- 所有围栏连通;
- 换言之,由端点和围栏构成的图是平面连通图,且没有桥。
输出格式
输出一个实数,表示所有农田区域的面积平方和。
若你的答案与标准答案的绝对误差或相对误差不超过 ,则认为正确。
数据范围
样例说明
原题中的图表示样例 2。两块农田的面积分别为 和 ,因此面积平方和为:
样例
输入 #1
5
0 0 0 1
0 1 1 1
0 0 1 0
1 0 2 0
1 1 2 0
输出 #1
2.25
输入 #2
6
0 0 0 1
0 1 1 1
0 0 1 0
1 0 2 0
1 1 2 0
1 0 1 1
输出 #2
1.25