Problems
Муравей и дерево
Муравей и дерево
\includegraphics{https://static.e-olymp.com/content/ee/ee0a7da2460a20a0ba73df78ae0bc2e954d99cd1.jpg}
Муравей находится в лесу с плоской поверхностью почвы в точке с координатами (\textbf{x_1}, \textbf{y_1}) и направляется в точку (\textbf{x_2}, \textbf{y_2}). В лесу растет дерево, основание ствола которого имеет форму круга с центром в точке (\textbf{x}, \textbf{y}) и радиусом \textbf{r}. Дерево, возможно, помешает муравью дойти до цели по прямой. В таком случае ему придется обойти дерево вокруг ствола.
Напишите программу, которая определит длину кратчайшего пути муравья.
\InputFile
Содержит вещественные числа \textbf{x_1}, \textbf{y_1}, \textbf{x_2}, \textbf{y_2}, \textbf{x}, \textbf{y}, \textbf{r}. Числа записаны через пробел и находятся в диапазоне от \textbf{0} до \textbf{1000}, \textbf{r} > \textbf{0}. Начальная и конечная точки пути муравья не могут находиться внутри круга.
\OutputFile
Вывести единственное вещественное число -- длину кратчайшего пути. Абсолютная ошибка результата не должна превосходить \textbf{0.01} (т.е. следует выводить число с точностью не менее \textbf{3} знаков после запятой).
Input example #1
0 0 4 4 2 2 1
Output example #1
6.014