一群考古学家刚刚开始对一座古老的拜特兰(Bytelandian)神庙进行研究。他们准备先照亮工作区域。这座神庙由许多矗立在宽阔平坦地面上的高大圆柱组成。考古学家部署了一个电源,并在场地周围放置了数十盏灯。他们希望用尽可能短的导线将每盏灯与电源连接起来。请帮助他们确定每根导线的长度。
为了简化任务,你可以假设:
- 没有圆柱与其他圆柱接触;
- 导线是无限细的;它必须铺设在地面上,并且可以与圆柱接触;
- 电源和灯可以视为几何点,且它们从不与圆柱接触。
编写一个程序:
- 读取神庙的描述以及灯和电源的位置;
- 对于每盏灯,确定将其连接到电源所需的最短导线长度;
- 将结果写入标准输出。
输入格式
标准输入的第一行包含一个整数 $n$ ($1 \le n \le 300$),表示圆柱的数量。接下来的 $n$ 行包含圆柱的描述。每个描述由三个整数 $x, y, r$ ($1 \le r \le 5\,000, r \le x, y \le 10\,000 - r$) 组成,分别表示圆柱中心坐标 $(x, y)$ 及其半径 $r$。下一行包含一个整数 $m$ ($1 \le m \le 200$),表示灯的数量。在接下来的 $m$ 行中,每行有两个整数 $x_i, y_i$ ($0 \le x_i, y_i \le 10\,000$),表示灯的坐标。输入的最后一行包含两个整数 $x_a, y_a$ ($0 \le x_a, y_a \le 10\,000$),表示电源的坐标。
输出格式
你的程序应输出 $m$ 行,每行对应输入中描述的一盏灯。每行应包含将该灯连接到电源所需的最短导线长度。如果长度以小数形式书写,则小数点后不能超过 6 位数字(正确格式的长度示例:"0", "0.0", "10.234", "0012", "1.000000",错误格式的长度示例:"-0", "+1", "0x1F", "10e-3", ".5", "10.1234567", "10.")。
样例
输入 1
2 3 2 2 8 4 1 2 9 3 9 5 0 3
输出 1
9.278662 9.273203