题目描述
> 我不会再失去另一个铁驭了。 —— BT-7274《Titanfall 2》
BT 的机能已经无法自行修复,它现在唯一能做的就是让你活下去。
已知 BT 初始位置位于 $P(X_P,Y_P)$,出口是一个中心点为 $O(X_O,Y_O)$,半径为 $R$ 的圆。此外,还有一面两端无限长的直线墙,取墙上不同的两点 $A(X_A,Y_A)$ 及 $B(X_B,Y_B)$ 进行描述。初始时点 $P$ 到墙的直线距离一定不大于墙到出口的最近距离,并且点 $P$ 和出口一定在墙的同一侧。
BT 可以将你往某个方向扔出去,你的运动轨迹将会是以点 $P$ 作为起点的一条射线。只要你的运动轨迹与出口存在交点,那么你就能够逃出去。
当然,如果 BT 把你扔到了墙上,你可以假设自己能够在撞墙的一瞬间,将**垂直于墙的方向**上的**速度的方向**进行反转,即你能够在墙上进行一次反弹。如果反弹后你的运动轨迹与出口存在交点,你同样能够逃出去。
但现在 BT 的机体受损已经很严重了,它控制不了将你扔出的方向。因此,你的前进方向将会是**完全随机**的……
试问你最终能够逃出去的概率是多少?

输入格式
第一行包含一个正整数 $T$,表示数据组数。
每组数据占三行,第一行包含两个整数 $X_P,Y_P$,第二行包含三个整数 $X_O,Y_O,R$,第三行包含四个整数 $X_A,Y_A,X_B,Y_B$.
- $1 \le T \le 10^4$
- $-100 \le X_P,Y_P,X_O,Y_O,X_A,Y_A,X_B,Y_B \le 100$
- $1 \le R \le 50$
- $(X_A,Y_A) \ne (X_B,Y_B)$
- 点 $P$ 到墙的直线距离一定不大于墙到出口的最近距离
- 点 $P$ 和出口一定在墙的同一侧
- 点 $P$ 不在墙上
- 点 $P$ 不在圆内或圆上
输出格式
对于每组数据,在一行内输出一个实数,表示你最终能够逃出去的概率。这个实数应当是一个百分数,即范围在 $[0, 100]$ 之间。
你的答案将会被判定为正确,当且仅当你的答案与标准答案的相对误差或绝对误差不超过 $10^{-6}$.
样例输入 #1
1 0 0 -1 3 1 1 0 1 4
样例输出 #1
17.8155394713
提示
对于样例:
如果直接扔向出口,可行的角度大约 $36.87^{\circ}$,如下图所示:

如果扔向墙并反弹至出口,可行的角度大约 $27.27^{\circ}$,如下图所示:

发现在此样例中两种方案的角度无重叠部分,故能够逃出去的概率为 $\frac{36.87^{\circ}+27.27^{\circ}}{360^{\circ}}\approx 17.82\%$.
来源
2023-05 多校合训ZJNU站 热身赛