F. Справедливый разрез
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Близнецам подарили треугольник на день рождения. Но они ходят в разные школы и каждый хочет показать свой подарок одноклассникам как можно скорее. Поэтому они хотят разрезать треугольник на две части справедливо.

Разрез считается справедливым, если площади двух фигур, полученных путем разреза, имеют равную площадь.

Для упрощения близнецы расположили треугольник следующим образом:

  1. Первая вершина — начало координат $$$(0, 0)$$$;
  2. Вторая — точка $$$(a, b)$$$;
  3. Третья — точка $$$(c, 0)$$$.

Также родители близнецов уже зафиксировали начало разреза — точку $$$P$$$ на одной из сторон треугольника.

Ваша задача — найти координаты точки $$$Q$$$ на одной из сторон треугольника такой, что отрезок $$$PQ$$$ разделяет треугольник на две фигуры равной площади.

Входные данные

Первая строка содержит через пробел три целых числа $$$a$$$, $$$b$$$ и $$$c$$$ $$$(0 \le a, b, c \le 10^6)$$$ — координаты второй вершины и $$$X$$$-координата третьей вершины треугольника соответственно.

Во второй строке записаны через пробел два целых числа $$$px$$$ и $$$py$$$ $$$(0 \le px, py \le 10^6)$$$ — координаты начала разреза $$$P$$$.

Гарантируется, что треугольник имеет ненулевую площадь.

Гарантируется, что точка $$$P$$$ лежит на одной из сторон треугольника.

Выходные данные

Если не существует точки $$$Q$$$, удовлетворяющей условию — выведите через пробел без кавычек «-1 -1».

В ином случае выведите через пробел два вещественных числа $$$qx$$$ и $$$qy$$$ $$$(0 \le qx, qy \le 10^6)$$$ — координаты точки $$$Q$$$.

Ответ будет засчитан, если абсолютная и/или относительная погрешность координат не превосходит $$$10^{-4}$$$.

Примеры
Входные данные
3 7 8
5 0
Выходные данные
2.40000000 5.60000000
Входные данные
5 10 12
4 8
Выходные данные
7.50000000 0.00000000
Входные данные
3 4 5
5 0
Выходные данные
1.50000000 2.00000000
Входные данные
17 31 49
23 0
Выходные данные
18.84615385 29.21153846
Примечание

Обратите внимание Рекомендуется выводить более, чем $$$4$$$ знака после запятой.

Пример Для вывода числа $$$z$$$ с $$$6$$$ знаками после запятой можно воспользоваться следующими командами:

  • C++: std::cout « std::fixed « std::setprecision(6) « z;

    (Требуются <iostream>, <iomanip>);

  • Java: System.out.printf(Locale.US, "%.6f", z);
  • Python: print(f'{z:.6f}').

Первый тестовый пример.

В первом примере точка Q имеет координаты $$$(2.4, 5.6)$$$.

Удвоенная площадь всего треугольника равна $$$7 \cdot 8 = 56$$$.

Удвоенная площадь синего треугольника после разреза равна $$$5.6 \cdot 5 = 28$$$.

Разрез выглядит подобным образом

Второй тестовый пример.

Во втором примере точка Q имеет координаты $$$(7.5, 0.0)$$$.

Удвоенная площадь всего треугольника равна $$$10 \cdot 12 = 120$$$.

Удвоенная площадь синего треугольника после разреза равна $$$8 \cdot 7.5 = 60$$$.

Третий тестовый пример.

В третьем примере точка Q имеет координаты (1.5, 2.0).

Удвоенная площадь всего треугольника равна $$$4 \cdot 5 = 20$$$.

Удвоенные площади синего и красного треугольников после разреза равны $$$2.0 \cdot 5 = 10$$$.

Последний тестовый пример.