Грахти
Ой! Я не лише проспав (а сьогодні ж день змагання!), але й застряг десь у Делфті по дорозі з готелю до місця проведення конкурсу. Навколо мене всюди грахти, ці міські канали, які є частиною багатьох міст у Нідерландах. Я трохи поспішаю, бо через кілька хвилин стартує змагання NWERC.
Що ще гірше, деякі мости в Делфті закриті через велосипедну гонку по місту. Тому замість пошуку відкритих мостів я вирішив перестрибнути через грахт.
Усім відомо, що комп'ютерні науковці, як я, добре розбираються в алгоритмах, але не є хорошими спортсменами. До того ж я трохи нервую і не хочу промокнути. Мені потрібна твоя допомога, щоб розрахувати відстань, на яку мені потрібно стрибнути через грахт.
На щастя, вчора я побував на екскурсії в центрі Делфту, де дізнався, що всі бруківки в Делфті квадратні і мають однаковий розмір. Таким чином, я можу зробити деякі виміри на моїй стороні грахта (мої одиниці - бруківка):
Ілюстрація для першого прикладу.
Я пройшов від точки C до точки D через точки A і B, рахуючи камені бруківки.
Точки A і C завжди знаходяться на краю грахта. Точки B і D знаходяться на однаковій відстані до грахта. Цільова точка T завжди знаходиться на краю іншої сторони каналу; це точка перетину лінії, що проходить через B і A, і лінії, що проходить через D і C. Кут між AT і AC становить 90 градусів, а два краї каналу - паралельні лінії.
Обчисліть для мене відстань між A і T (необхідну відстань стрибка).
Вхідні дані
Для кожного тесту в одному рядку містяться три позитивних цілих числа, що визначають відстані між A і B, A і C та B і D.
Відомо, що жодна відстань не перевищує 1000, а відстань між B і D більша, ніж відстань між A і C.
Вихідні дані
Для кожного тесту в одному рядку виведіть відстань між A і T у вигляді нескоротної дроби (тобто видаліть усі спільні множники чисельника і знаменника).