eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Стрельба из лазера

Стрельба из лазера

Лазерная пушка расположена в точке (\textbf{0}, \textbf{0}) на плоскости. Целями являются вертикальные отрезки с координатами концов (\textbf{x_i}, \textbf{y1_i}) -- (\textbf{x_i}, \textbf{y2_i}). Выбирается произвольный угол от -\textbf{PI} / \textbf{2} до \textbf{PI} / \textbf{2} и производится выстрел. Выстрел под углом -\textbf{PI} / \textbf{2} производится вертикально вниз, \textbf{0} -- горизонтально вправо, \textbf{PI} / \textbf{2} -- вертикально вверх. Выстрелом является бесконечный луч, исходящий из начала координат. Выстрел попадает в цель, если луч и отрезок цели имеют общую точку. Вычислить ожидаемое количество целей, которое может быть поражено одним выстрелом. Попадание в цель не меняет движение луча. \InputFile Состоит из нескольких тестов. Первая строка каждого теста содержит количество целей \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{50}). Следующие три строки задают координаты целей. \textbf{i}-ое число второй строки каждого теста содержит значение \textbf{x_i}, \textbf{i}-ое число третьей строки - значение \textbf{y1_i}, \textbf{i}-ое число четвертой строки каждого теста - значение \textbf{y2_i}. Известно, что все координаты целые, значения \textbf{x_i} разные, \textbf{1} ≤ \textbf{x_i} ≤ \textbf{1000}, \textbf{-1000} ≤ \textbf{y1_i}, \textbf{y2_i} ≤ \textbf{1000}. \OutputFile Для каждого теста в отдельной строке вывести с \textbf{4} цифрами после десятичной точки ожидаемое количество целей, которое может быть поражено одним выстрелом.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
1
1	
-1	
1
4
134 298 151 942
-753 -76 19 568
440 689 -39 672
Выходные данные #1
0.5000
1.4442