Hide

Problem B
Flight Safety

Safety is an important issue when planning flights. First and foremost, one should of course take every possible measure to make sure that the trip is uneventful and that no incidents occur. But even then, one should always be prepared for the worst and try to make sure that if an incident does happen, people’s chances of surviving are as high as possible.

When making an emergency landing over water, the distance to the nearest land is a critical factor. In general, the further out on open waters, the worse are the odds of survival. Thus, one important safety parameter of a flight is how far away from the nearest land any part of the flight will take you. Your job is to write a program which, given a flight route, will determine this distance.

To simplify matters, we model the world as a $2$-dimensional plane rather than a sphere. We model continents as polygons, and a flight route as a sequence of key points connected by straight line segments. Flight routes always start and end strictly inside a continent, but intermediate key points may be located over water. Continents do not intersect themselves or touch each other.

\includegraphics[width=0.35\textwidth ]{flight}
Figure 1: Illustration of second sample case (furthest point marked with a square).

Input

The input consists of:

  • One line containing two integers $C$ ($1 \le C \le 20$) and $N$ ($2 \le N \le 50$), where $C$ is the number of continents and $N$ is the number of key points in the flight route.

  • $N$ lines each containing two integers $X, Y$ giving the coordinates of the key points, from first to last.

  • The descriptions of the $C$ continents. Each continent description starts with a line containing an integer $M$ ($3 \le M \le 50$) giving the number of vertices of this continent. It is followed by $M$ lines, each containing a pair of integers $X, Y$ giving the coordinates of the $M$ vertices, in either clockwise or counter-clockwise order.

Every coordinate in the input is between $-10\, 000$ and $10\, 000$.

Output

Output one line with the furthest distance from land that the flight route will go. The answer should be given with an absolute or relative error of at most $10^{-6}$.

Sample Input 1 Sample Output 1
1 2
-9 -6
5 1
3
0 16
-16 -12
17 -6
0.000000
Sample Input 2 Sample Output 2
2 3
12 4
16 17
3 9
4
1 0
4 19
19 14
6 12
3
10 10
5 3
18 2
2.942685

Please log in to submit a solution to this problem

Log in