EduBrick

K. Ремень на двух шкивах

2000 мс · 256 МБ · всё или ничего

Два шкива — круги с центрами O1O_1, O2O_2 и радиусами r1r_1, r2r_2. Круги не пересекаются и не вложены друг в друга. На них снаружи натянут ремень: он касается обоих кругов и охватывает их.

Найдите длину ремня.

Формат ввода

В первой строке qq (1≤q≤2⋅1041 \le q \le 2 \cdot 10^4). В каждой из следующих qq строк шесть целых чисел: x1x_1, y1y_1, r1r_1, x2x_2, y2y_2, r2r_2. Координаты по модулю не превосходят 10410^4, 1≤ri≤1041 \le r_i \le 10^4.

Гарантируется, что круги не пересекаются и не касаются: ∣O1O2∣>r1+r2|O_1O_2| > r_1 + r_2.

Формат вывода

Для каждого запроса выведите длину ремня.

Ответ принимается с абсолютной или относительной погрешностью 10−610^{-6}.

Примеры

ввод
2
0 0 3 10 0 3
0 0 5 30 0 1
вывод
38.849555922
79.383683626
ввод
2
-100 -100 7 100 100 9
0 0 1 3 0 1
вывод
615.965049601
12.283185307
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.