Statement is not available in English language
E. Занавески
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Офис одной из IT-компаний при виде сверху представляет собой квадрат со сторонами длины $$$n$$$. Для удобства введем систему координат и расположим на ней офис так, что левый-нижний угол офиса будет иметь координаты $$$(0,0)$$$, а правый-верхний — координаты $$$(n,n)$$$. При этом левая стена офиса лежит на оси $$$OY$$$, а нижняя — на оси $$$OX$$$ (см. рисунок ниже). Правой и верхней стен в офисе нет, вместо них по всей длине стороны квадрата расположены окна.

Приближается лето, поэтому солнце всё чаще заглядывает в офис. Лучи солнца движутся в направлении вектора $$$(x_s,y_s)$$$. Можно считать, что солнце достаточно большое и через каждую точку проходит ровно один такой луч.

В офисе расположены $$$k$$$ компьютерных столов, каждый из которых можно представить в виде отрезка. Лучи солнца проходят через окна и попадают на компьютерные столы. Конечно, это доставляет неудобства разработчикам и препятствует развитию IT-индустрии. Для устранения проблемы было решено применить инновационный метод — занавески. Занавески можно вешать на окна и тем самым частично блокировать проникновение лучей в офис. Более формально, любую часть окон можно завесить занавесками; если луч света попадает на занавеску, то он не проходит в офис. На картинке ниже красным цветом отмечена занавеска, которая блокирует попадание на стол лучей солнца, движущихся вдоль вектора $$$(-2, 0)$$$:

Разумеется, нужно повесить занавески таким образом, чтобы лучи солнца не попали ни на один компьютерный стол. С другой стороны, разработчики соскучились по ярким летним дням, поэтому суммарная длина занавесок должна быть минимально возможной. Помогите IT-индустрии — найдите эту длину!

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

В первой строке записаны три целых числа $$$n$$$, $$$x_s$$$ и $$$y_s$$$ ($$$2 \leq n \leq 10^9$$$, $$$-10^9 \leq x_s, y_s \leq 0$$$, $$$x_s + y_s \lt 0$$$) — размер офиса и направление лучей солнца.

Вторая строка содержит одно целое число $$$k$$$ ($$$1 \leq k \leq 2\cdot 10^5$$$) — количество столов в офисе.

В каждой из следующих $$$k$$$ строк записаны 4 натуральных числа $$$x_{1i}$$$, $$$y_{1i}$$$, $$$x_{2i}$$$, $$$y_{2i}$$$ ($$$0 \lt x_{1i}, y_{1i}, x_{2i}, y_{2i} \lt n$$$), обозначающие координаты одного конца стола $$$(x_{1i}, y_{1i})$$$ и координаты другого конца стола — $$$(x_{2i}, y_{2i})$$$. Столы могут пересекаться или даже совпадать.

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

Выведите единственное вещественное число — минимальную суммарную длину занавесок.

Ваш ответ будет считаться правильным, если его абсолютная или относительная ошибка не превосходит $$$10^{-6}$$$.

Формально, пусть ваш ответ равен $$$a$$$, а ответ жюри равен $$$b$$$. Ваш ответ будет зачтен, если и только если $$$\frac{|a - b|}{\max{(1, |b|)}} \le 10^{-6}$$$.

Система оценки

В тестах общей стоимостью не менее 30 баллов дополнительно выполняется $$$x_s=0$$$ или $$$y_s=0$$$.

В тестах общей стоимостью не менее 30 баллов дополнительно выполняется $$$k=1$$$.

Примеры
Входные данные
6 -2 0
1
2 1 4 2
Выходные данные
1.000000
Входные данные
6 0 -2
1
2 1 4 2
Выходные данные
2.000000
Входные данные
6 -2 -1
1
2 1 4 2
Выходные данные
0.000000
Входные данные
6 -2 -3
2
2 1 4 2
1 3 2 3
Выходные данные
2.666667
Входные данные
6 -2 -3
2
2 1 4 2
1 3 4 3
Выходные данные
4.000000
Примечание

Картинка в условии соответствует первому примеру.

Во втором примере расположение стола такое же, как и в первом, но лучи солнца движутся вертикально:

В третьем примере стол расположен параллельно лучам солнца, поэтому требуется занавеска длины 0:

В четвертом примере для каждого стола требуется отдельная занавеска:

В пятом примере одна занавеска защищает оба стола от попадания солнечных лучей: