Стрельба из лука
Прошлым летом вы смотрели все матчи на Олимпийских играх 2012 года в Лондоне. Одним из интересных видов спорта была стрельба из лука. В этой задаче мы рассмотрим новый тип стрельбы из лука.
В этом новом виде стрельбы у игрока есть стрелы, которые могут пробивать любую цель и лететь бесконечно (одна и та же стрела может поразить более одной цели). Вокруг игрока расположено множество целей, которые могут пересекаться и/или накладываться друг на друга.
Сверху цели можно моделировать как отрезки, а игрока — как точку в начале координат (точка (0,0)). Ни одна из целей не пересекается с позицией игрока.
Вам интересно вычислить ожидаемое количество целей, которые игрок может поразить одной стрелой, если он выстрелит в случайном направлении (существует бесконечное количество различных направлений, и каждое направление имеет одинаковую вероятность быть использованным для случайного выстрела).
Например, следующая иллюстрация объясняет первый пример тестового случая, где игрок находится в начале координат, и есть две цели: T_1 с конечными точками (1,5) и (3,3), и T_2 с конечными точками (3,5) и (6,2). Вы можете заметить, что есть область, где игрок может выстрелить стрелой и поразить обе цели, две области, где он может поразить только одну цель, и одна область, где он не поразит ни одной цели.
Заметьте, что цель может быть поражена в любой точке между ее 2 конечными точками (включительно).
Входные данные
Ваша программа будет тестироваться на одном или нескольких тестовых случаях. Первая строка ввода содержит одно целое число T, количество тестовых случаев (1 ≤ T ≤ 100). Далее следуют тестовые случаи, каждый из которых начинается с строки, содержащей одно целое число N (1 ≤ N ≤ 100), представляющее количество целей в игре. Затем следуют N строк, каждая из которых содержит 4 целых числа, разделенных пробелом: X_1 Y_1 X_2 Y_2 (-100 ≤ X_1, Y_1, X_2, Y_2 ≤ 100), представляющих конечные точки i-й цели (X_1,Y_1) и (X_2,Y_2).
Выходные данные
Для каждого тестового случая выведите в одной строке одно число, представляющее ожидаемое количество целей, которые игрок может поразить одной стрелой, округленное до пяти десятичных знаков.