시간 제한
메모리 제한
시간 제한
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을 출력한다.