SP278 BICYCLE - Bicycle
题目描述
彼得喜欢骑自行车上学。但是在人行道上骑车是被禁止的,而骑在公路上又很危险。因此,彼得只走专门的自行车道。幸运的是,彼得的家和学校附近都有这样的自行车道。城市中仅有两条自行车道,它们都是圆形的,并且可以在交叉点互通。彼得知道哪里上路以及在哪里下车以到达学校。他想知道:「从家到学校骑行的最短路径距离是多少?」
输入格式
首先输入一个整数 $t$,表示测试用例的数量($t \leq 100$),接下来提供 $t$ 组测试数据。
每组测试数据前两行描述两条自行车道:
- 第一行:三个整数 $x1\ y1\ r1$,分别表示第一个圆的中心坐标 ($x1, y1$) 和半径 $r1$。
- 第二行:三个整数 $x2\ y2\ r2$,分别表示第二个圆的中心坐标 ($x2, y2$) 和半径 $r2$。
其中,-200 ≤ $x1, x2, y1, y2$ ≤ 200,0 ≤ $r1, r2$ ≤ 200。
接下来的两行是彼得家和学校的坐标:
- 第三行:实数 $px1, py1$,表示家的坐标。
- 第四行:实数 $px2, py2$,表示学校的坐标。
可以假设这些坐标非常精准地位于圆上(精度为 $10^{-8}$)。两个点有可能在同一个圆上。
输出格式
对于每组测试数据,输出彼得从家到学校的最短骑行距离。答案需要精确到小数点后四位。如果无法通过自行车道到达学校,则输出 -1。
**本翻译由 AI 自动生成**