题目名称 1878. [国家集训队2011]气场区域
输入输出 nt2011_region.in/out
难度等级 ★★★★
时间限制 3000 ms (3 s)
内存限制 512 MiB
测试数据 20
题目来源 Gravatarcstdio 于2014-12-15加入
开放分组 全部用户
提交状态
分类标签
计算几何
分享题解
通过:3, 提交:9, 通过率:33.33%
Gravatarcstdio 100 8.965 s 0.32 MiB C++
Gravatar炎帝 100 9.939 s 0.32 MiB C++
Gravatarmikumikumi 100 12.092 s 0.32 MiB C++
Gravatar张灵犀不和我一般见识真可怕呢(笑 65 0.080 s 0.29 MiB C++
Gravatarmikumikumi 65 9.513 s 0.25 MiB C++
Gravatarmikumikumi 60 7.951 s 0.32 MiB C++
Gravatarmikumikumi 55 4.558 s 0.32 MiB C++
Gravatar张灵犀不和我一般见识真可怕呢(笑 5 0.599 s 0.30 MiB C++
Gravatar习小小 0 0.000 s 0.00 MiB C++
关于 气场区域 的近10条评论(全部评论)
cstdio
Gravatar炎帝
2015-08-04 16:15 2楼
尼玛,常数是标程的300倍……
Gravatarcstdio
2014-12-16 09:14 1楼

1878. [国家集训队2011]气场区域

★★★★   输入文件:nt2011_region.in   输出文件:nt2011_region.out   评测插件
时间限制:3 s   内存限制:512 MiB

【试题来源】

2011中国国家集训队命题答辩

【问题描述】

在世界末日的前一天,所有神牛全部来到了一个矩形大广场上。这让你——一个相对还很弱小的同学感到透不过气来,因为神牛会产生看不到的气场,让人身心俱疲。具体的,每个神牛的控制区域都是一条线段(x1,y1)----(x2,y2),两端点有可能相同,那样就变成了一个点。设你所在的位置为点P,如果可以过P做两条互相垂直的直线,使得这两条直线都与某一个或某两个神牛的控制区域有公共点,那么这个P点就是被气场覆盖的部分,这是你不想呆在的地方,你只想一个人静一静,于是,你想知道这个广场的安静系数的值。其中,安静系数=未被气场覆盖的面积/广场总面积。

【输入格式】

输入的第一行包含三个整数N,X,Y,分别表示神牛的个数,以及广场的长和宽。广场的区域范围为(0,0)~(X,Y).
接下来N行,每行有四个用空格隔开的非负整数x1,y1,x2,y2,表示该神牛的控制线段为(x1,y1)----(x2,y2),其中,x1,x2在0到X之间,y1,y2在0到Y之间.

【输出格式】

输出一个0到1之间的数,表示这个广场的安静系数,只要输出的答案和参考答案相差不超过0.005就算正确。

【样例输入】

1 2 2
0 1 2 1

【样例输出】

0.214602

【样例说明】

实际上,样例对应的气场覆盖的区域为以(1,1)为圆心的一个圆,面积为pi,而安静系数自然就等于(4-pi)/4=0.2146018…

【数据规模和约定】

25%的数据满足,N≤10;
另外15%的数据满足,除了一个神牛,其他的神牛的控制区域只是一个点;
100%的数据满足,N≤50,X≤10000,Y≤100.