printРабочее место участника

printЗадачи

821. Прокладка кабеля

Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Необходимо проложить кабель для скоростной передачи данных из лаборатории к компьютерам. Кабель выходит из стены лаборатории, затем идет прямо по коридору, на углу поворачивает по кругу на 90 градусов и затем идет прямо к стене компьютерной комнаты (см. рис). Для уменьшения потерь информации радиус поворота кабеля должен быть как можно больше, насколько позволяет форма коридора. Напишите программу, вычисляющую максимальный радиус поворота при прокладке кабеля.
Ввод содержит в первой строке 6 целых чисел `x_A`, `y_A`, `x_B`, `y_B`, `x_C`, `y_C` (`0\ ≤\ x_A\ ≤\ x_C\ ≤\ x_B\ ≤\ 10000`, `0\ ≤\ y_A\ ≤\ y_C\ ≤\ y_B\ ≤\ 10000`), разделенных пробелами – координаты точки A, в которой кабель выходит из стены лаборатории, координаты точки B, в которой кабель входит в стену компьютерной комнаты, и координаты угла коридора С. В точках A и B кабель должен быть перпендикулярен стене.
Вывести одно число с точностью `10^{-5}` – максимальный радиус поворота.

Пример ввода

10 0 90 110 30 100

Пример вывода

50.00000
loading