P9643 [SNCPC2019] Pick Up
题目描述
格子城是一个位于无限二维平面上的城市,其中对于所有 $k \in \mathbb{Z}$($\mathbb{Z}$ 是所有整数的集合),直线 $x = k$ 和 $y = k$ 是城市的街道。人们只能沿着道路从一个位置移动到另一个位置。这就是为什么这个城市被称为格子城!
两个朋友,宝宝和梦想格子,快乐地生活在这个城市里。今天宝宝正从他位于 $(x_A, y_A)$($x_A, y_A \in \mathbb{Z}$)的家出发,前往位于 $(x_C, y_C)$($x_C, y_C \in \mathbb{Z}$)的购物中心。然而,这段路对他来说太远了,所以他决定叫住在 $(x_B, y_B)$($x_B, y_B \in \mathbb{Z}$)的梦想格子来帮忙。
宝宝和梦想格子同时从他们的家出发。不同于以每分钟 $a$ 个单位速度步行的宝宝,梦想格子开车并以每分钟 $b$ 个单位速度移动。当梦想格子和宝宝在同一个点相遇时,梦想格子可以接上宝宝,然后他们可以一起以每分钟 $b$ 个单位速度移动。转身或接上宝宝不需要时间。
从宝宝的家到购物中心所需的最短时间是多少?请注意,如果梦想格子接上宝宝会更慢,则不需要梦想格子接宝宝。
输入格式
有多个测试用例。输入的第一行包含一个整数 $T$($1 \le T \le 10^5$),表示测试用例的数量。对于每个测试用例:
第一行包含两个整数 $a$ 和 $b$($1 \le a < b \le 10^9$),表示宝宝的步行速度和梦想格子的驾驶速度。
第二行包含六个整数 $x_A$,$y_A$,$x_B$,$y_B$,$x_C$ 和 $y_C$($-10^9 \le x_A, y_A, x_B, y_B, x_C, y_C \le 10^9$),表示宝宝的家、梦想格子的家和购物中心的位置。保证这三点互不相同。
输出格式
对于每个测试用例,输出一行,包含一个数字,表示宝宝到达购物中心的最短时间。如果你的答案的绝对误差或相对误差不超过 $10^{-6}$,则将被视为正确。
**【样例解释】**
对于第一个样例测试用例,宝宝和梦想格子将在 $D(1,2)$ 相遇,然后梦想格子载着宝宝去购物中心。
对于第二个样例测试用例,宝宝和梦想格子将在 $D(1.5,1)$ 相遇,然后梦想格子载着宝宝去购物中心。
翻译来自于:[ChatGPT](https://chatgpt.com/)。
说明/提示
For the first sample test case, BaoBao and DreamGrid will meet at $D(1,2)$ and then DreamGrid drives BaoBao to the shopping mall.
For the second sample test case, BaoBao and DreamGrid will meet at $D(1.5,1)$ and then DreamGrid drives BaoBao to the shopping mall.
