#agc021b. [agc021_b]Holes
[agc021_b]Holes
题目描述
在二维平面上有 个洞。第 个洞的坐标为 。
令 . Ringo 执行以下操作:
- 从以原点为中心、半径为 的圆的内部随机选择一个点,并将 Snuke 放置在那个点上。Snuke 将移动到离该点最近的洞中,并掉进那个洞里。如果有多个这样的洞,则选择索引最小的洞。
对于每个 ,找出 Snuke 掉入第 个洞的可能性。
这里,从以半径为 的圆的内部随机选择一个点的操作定义如下:
- 根据 \[-R,R\] 上的均匀分布独立地选择两个实数 和 。
- 如果 ,则选择点 。否则,重复选择实数 直到满足条件。
约束条件
- 所有给定的点两两不同。
- 所有输入值为整数。
输入
从标准输入读入输入数据,格式如下:
:
输出
打印 个实数。第 个实数必须表示 Snuke 掉入第 个洞的可能性。
当所有输出值的绝对误差或相对误差都不超过 时,输出将被判定为正确。
示例输入 1
2
0 0
1 1
示例输出 1
0.5
0.5
如果 Ringo 将 Snuke 放在区域 中,Snuke 将掉入第一个洞。这种情况发生的概率非常接近 。否则,Snuke 将掉入第二个洞,其发生的概率也非常接近 。
示例输入 2
5
0 0
2 8
4 5
2 6
3 10
示例输出 2
0.43160120892732328768
0.03480224363653196956
0.13880483535586193855
0.00000000000000000000
0.39479171208028279727