만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

섬 여행

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

요약
각 섬 위는 걸어서 자유롭게 이동할 수 있을 때, 섬 a에서 섬 b까지 날아가야 하는 최소 거리를 구합니다.
난이도

보통10점 중 7점

유형
최단 경로, 기하
정답자
아직 제출이 없습니다

문제

히컵과 투슬리스는 섬이 여럿 모인 군도 한가운데에 있다. 군도에는 nn개의 섬이 있다. 공중에서 내려다보면 각 섬은 볼록 다각형이다. 어떤 두 섬도 공통된 점을 갖지 않는다. 섬은 11번부터 nn번까지 번호가 붙어 있다. 히컵은 aa번 섬에 있고, 급히 bb번 섬에 가야 한다.

히컵과 투슬리스는 어느 섬에서든 걸어서 자유롭게 이동할 수 있다. 하지만 한 섬에서 다른 섬으로 가려면 투슬리스가 날아야 한다. 투슬리스는 어느 섬의 임의의 점에서든 날아오를 수 있고, 임의의 경로로 날아서, 어느 섬의 임의의 점에든 착륙할 수 있다. 이때 투슬리스가 나는 거리는 그 경로의 길이와 같다. 투슬리스가 많이 지쳐 있어서, 히컵은 투슬리스가 나는 거리를 최소로 줄이려고 한다. 이 거리를 구하는 것을 도와라.

입력

첫 줄에 세 정수 nn, aa, bb가 주어진다. 각각 섬의 개수, 히컵이 처음 있는 섬의 번호, 히컵이 가고자 하는 섬의 번호이다 (1≤n≤2001 \le n \le 200, 1≤a,b≤n1 \le a, b \le n).

각 섬에 대한 설명은 그 섬을 나타내는 다각형의 꼭짓점 개수 kik_i로 시작한다 (3≤ki≤5003 \le k_i \le 500). 이어지는 kik_i개의 줄에는 ii번째 다각형의 jj번째 꼭짓점의 좌표 xi,jx_{i,j}와 yi,jy_{i,j}가 정수로 주어진다 (−109≤xi,yi≤109-10^9 \le x_i, y_i \le 10^9). 꼭짓점은 반시계 방향 순서로 주어진다. 연속한 세 꼭짓점이 한 직선 위에 놓이는 경우는 없다.

섬은 입력에 주어진 순서대로 11부터 nn까지 번호가 붙는다. 어떤 두 다각형도 공통된 점을 갖지 않는다고 보장된다.

출력

히컵이 섬 aa에서 섬 bb로 갈 수 있도록, 투슬리스가 날아야 하는 거리의 최솟값을 실수 하나로 출력한다. 절대 오차 또는 상대 오차가 10−910^{-9} 이하이면 정답으로 인정한다.

힌트

첫 번째 그림은 히컵과 투슬리스가 걸어서 가는 경로를 주황색으로, 투슬리스가 나는 경로를 파란색으로 나타낸다.

두 번째 그림은 아래와 같다.

예제2

  1. 예제 1

    입력
    4 1 3
    3
    0 1
    0 0
    1 0
    3
    2 0
    3 0
    3 1
    3
    3 2
    3 3
    2 3
    3
    1 3
    0 3
    0 2
    
    예상 출력
    2.000000000000000
    
  2. 예제 2

    입력
    2 1 2
    4
    2 1
    3 2
    2 3
    1 3
    4
    4 2
    5 2
    4 4
    3 3
    
    예상 출력
    0.707106781186548