Задача C. Система зеркал

Автор:Г. Гренкин   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

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

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

Так как Солнце находится на достаточно большом расстоянии от Земли, при расчётах часто считают Солнце бесконечно удалённой точкой. В этом случае световые лучи, испускаемые Солнцем, считают параллельными друг другу.

В определённый день и в определённый момент времени Солнце находится в определённом месте. Соответственно, солнечные лучи падают туда, где находятся юные физики, под определённым углом. Ученики, в свою очередь, могут наклонять зеркала под разными углами.

Пусть зеркала наклонены так, что в некоторой системе координат их можно задать как прямые, имеющие уравнения y = ki x + bi. Направление падения солнечных лучей задаётся единичным вектором a.

Требуется найти направление отражения лучей от N-го зеркала, а именно, требуется найти единичный вектор c.

Примечание. По законам оптики, свет отражается так, что угол падения равен углу отражения (α = β на рисунке).

Формат входного файла

Первая строка входного файла содержит целое число N.

Вторая строка содержит вещественные числа x1 y1 — координаты вектора a.

Третья строка содержит N вещественных чисел ki — угловые коэффициенты прямых.

Длина вектора a приближённо равна 1.

Предполагается, что зеркала расположены так, что лучи света, отражаясь, обязательно дойдут до всех зеркал.

Формат выходного файла

Выходной файл должен содержать два вещественных числа x2 y2 — координаты вектора c.

Длина вектора c должна быть приближённо равна 1.

Координаты вектора c должны быть выведены с точностью до 3-х знаков после запятой.

Ограничения

1 ≤ N ≤ 10

 − 1000 ≤ ki ≤ 1000

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
1
0.7071067812 -0.7071067812
0
0.7071067812 0.7071067812
2
1
1 0
1
0 1
3
2
1 0
1 -1
-1 0

0.079s 0.012s 17