다각형의 최대 밝기

볼록 다각형과 꼭짓점 삭제 순서가 주어질 때, 각 삭제 뒤 외부의 한 점이 비출 수 있는 변 길이 합의 최댓값을 구한다.

어려움9기하동적 계획법분할 정복그리디아직 제출이 없습니다시간 제한3초메모리 제한1024 MB

문제

평면 위에 볼록다각형 PP가 있다. PP의 바깥에 있는 점 TT에 광원을 놓으면 PP의 변 가운데 일부가 빛을 받는다. AABBPP에서 이웃한 두 꼭짓점일 때, 삼각형 TABTAB의 넓이가 00이 아니고 이 삼각형이 PP의 내부와 만나지 않으면 변 ABAB는 빛을 받는다.

다각형의 밝기는 빛을 받는 변의 길이를 모두 더한 값이다. 최대 밝기는 점 TT를 가장 유리한 자리에 놓았을 때 얻는 밝기의 최댓값이다. TT와 다각형 사이의 거리에는 제한이 없고, TT의 좌표가 정수일 필요도 없다.

두 번째 예제의 다각형 PP, P1P_1, P2P_2, P3P_3이다. 그림에 최대 밝기를 함께 표시했다.

볼록다각형 PP의 꼭짓점은 차례대로 A1,A2,,AnA_1, A_2, \dots, A_n이다. PPqq단계에 걸쳐 바뀐다. jj번째 단계에서는 아직 남아 있는 꼭짓점 하나를 지우고 새 다각형 PjP_j를 얻는다. 즉 PjP_j의 꼭짓점은 아직 지우지 않은 PP의 꼭짓점이고, 그 순서는 PP에서와 같다. 각 PjP_j도 볼록다각형이다.

PPP1,P2,,PqP_1, P_2, \dots, P_q의 최대 밝기를 각각 구하라.

입력

첫 줄에 처음 다각형 PP의 꼭짓점 개수 nn이 주어진다.

다음 nn개 줄 가운데 jj번째 줄에는 꼭짓점 AjA_j의 좌표를 나타내는 두 정수 xjx_jyjy_j가 주어진다 (109xj,yj109-10^9 \le x_j, y_j \le 10^9).

그다음 줄에 단계 수 qq가 주어진다 (0qn30 \le q \le n - 3).

이어지는 qq개 줄 가운데 jj번째 줄에는 정수 kjk_j가 주어진다 (1kjn1 \le k_j \le n). jj번째 단계에서 꼭짓점 AkjA_{k_j}를 지운다는 뜻이다.

PP의 꼭짓점은 반시계 방향으로 주어진다. 이웃한 두 변이 평행한 경우는 없고, kjk_j는 모두 서로 다르다.

출력

q+1q + 1개 줄을 출력한다.

첫 줄에는 처음 다각형 PP의 최대 밝기를 출력한다. 이어지는 qq개 줄 가운데 jj번째 줄에는 jj번째 단계를 마친 뒤 얻은 다각형 PjP_j의 최대 밝기를 출력한다.

각 값은 소수점 아래 여섯째 자리까지 반올림해 출력한다. 끝자리가 00이어도 생략하지 않으므로 소수점 아래에는 항상 여섯 자리가 있어야 한다. 모든 테스트에서 정답은 반올림 경계에서 충분히 떨어져 있어, 배정밀도 실수로 계산해도 같은 값이 나온다.