천 위의 좀

시간 제한2초메모리 제한128 MB

문제

좀 한 마리가 매우 넓은 천 위에 있다. 천의 크기는 이동에 영향을 주지 않을 만큼 무한하다고 본다. 천 위에는 다른 재질의 천을 덧대어 기운 부분이 N개 있으며, 각 부분은 볼록다각형이다. 이 볼록다각형들은 서로 닿거나 겹칠 수 있다.

좀은 현재 위치에서 목표 위치까지 천으로 된 부분만 지나 이동하려고 한다. 덧댄 부분의 내부는 지나갈 수 없다. 다만 덧댄 부분을 꿰맨 실은 천으로 되어 있으므로, 볼록다각형의 변 위는 지나갈 수 있다. 두 볼록다각형의 변이 맞닿은 부분도 지나갈 수 있다.

좀이 목표 위치까지 이동할 수 있을 때의 최단 거리를 구하라.

입력

첫째 줄에 다섯 정수 N, X, Y, U, V가 주어진다. 좀의 현재 위치는 (X, Y), 목표 위치는 (U, V)이다.

다음 N개 줄에는 덧댄 부분을 나타내는 볼록다각형이 하나씩 주어진다. 각 줄은 먼저 꼭짓점 개수 M을 포함하고, 이어서 M개 꼭짓점의 x좌표와 y좌표가 순서대로 주어진다.

모든 볼록다각형 꼭짓점 수의 합은 300 이하이다. 모든 좌표는 -10,000 이상 10,000 이하의 정수이다.

출력

첫째 줄에 최단 거리를 출력한다. 절대 오차 또는 상대 오차가 10^-3 이하이면 정답으로 인정된다. 이동할 수 없다면 -1을 출력한다.