Надіслати розв'язок

Бали: 20,00 (partial)
Time limit: 2.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Степан грає в більярд на двовимірній площині. Вісь ~x~ працює як стіна; коли кулька вдаряється об вісь, вона відбивається від осі, так що кут падіння дорівнює куту відбиття.

Куля Степана знаходиться зараз в (~S_x,S_y~). Коли він бʼє по кулі, націляючись на певну точку, він котиться по прямій до цієї точки. Треба щоб мʼяч потрапив на вісь ~x~ рівно один раз, а потім пройшов (~G_x, G_y~).

Куди вздовж осі ~x~ він повинен прицілитися?

Формат вхідних даних

Вхідний потік містить цілі числа ~S_x, S_y, G_x, G_y~ (~-10^6 \le S_x, G_x \le 10^6~, ~0 < S_y, G_y \le 10^6~)

Числа розділяються пропуском.

Формат вихідних даних

У вихідний потік виведіть ~x~. Тут (~x, 0~) — точка, у яку має прицілитися Степан.

Ваш результат буде вважатися правильним, якщо його абсолютна або відносна похибка з нашої відповіді становить не більше ~10^{-6}~.

Примітка

До прикладу 1:

Приклад вхідних даних

1 1 7 2

Приклад вихідних даних

3.0000000000

Приклад вхідних даних

1 1 3 2

Приклад вихідних даних

1.6666666667

Приклад вхідних даних

-9 99 -999 9999

Приклад вихідних даних

-18.7058823529

Коментарі

Please read the guidelines before commenting.


Ще немає коментарів.