확장 공사

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

요약
처음 주어진 삼각형에 점을 하나씩 추가할 때마다, 모든 점을 포함하는 가장 작은 볼록 다각형의 둘레와 넓이를 구한다.
난이도

어려움10점 중 8점

유형
기하, 동적 계획법, 그리디
정답자
아직 제출이 없습니다

문제

키위는 가지 농사를 위해 새로운 땅을 찾고 있다. 이 소식을 들은 키위의 친구 유틸은 키위에게 평지에 NN개의 표지판을 세운 뒤, 여기서 농사를 시작하면 어떻겠냐고 제안했다. 단, 주어진 표지판들을 모두 포함하는 가장 넓이가 작은 볼록 다각형에서만 농사를 지을 수 있다고 했다.

그렇게 키위는 가지 농사를 시작했다. 농사를 잘 짓고 있는지 확인하러 온 유틸은 키위가 열심히 가지를 키우고 있는 모습을 보고는 감동을 받아 키위에게 이렇게 말했다.

"앞으로 QQ일 동안 매일 새로운 표지판을 하나 세울 거야. 기존에 세웠던 표지판들과 새로 세운 표지판을 모두 포함하는 가장 넓이가 작은 볼록 다각형이 너의 새 농지야. 축하해! 근데 나도 주민 센터에 농지를 새로 보고해야 되서 말인데, 새 농지의 둘레와 면적을 알려주지 않을래?"

더 넓은 땅에서 가지를 수확할 수 있다는 사실에 키위는 기뻤다. 하지만 표지판이 너무 많아서 매일 변화하는 땅의 둘레와 면적을 계산하기 쉽지 않았다. 키위를 도와주자!

입력

첫째 줄에 표지판의 개수 NN이 정수로 주어진다. (N=3)(N = 3)

다음 NN개의 줄에 각 표지판의 위치 x_ix\_i와 y_iy\_i가 공백으로 구분되어 정수로 주어진다. (0≤x_i,y_i≤109)(0 \le x\_i, y\_i \le 10^{9})

다음 줄에 새로 세우는 표지판의 개수 QQ가 정수로 주어진다. (1≤Q≤300 000)(1 \le Q \le 300\ 000)

다음 QQ개의 줄에 새로 세우는 각 표지판의 위치 a_ia\_i와 b_ib\_i가 공백으로 구분되어 정수로 주어진다. (0≤a_i,b_i≤109)(0 \le a\_i, b\_i \le 10^{9})

주어지는 모든 표지판들에 대해 두 표지판이 같은 위치에 있는 경우는 없으며, 처음에 주어지는 세 표지판이 한 직선 위에 있는 경우는 없다.

출력

QQ개의 줄에 새 농지의 둘레와 넓이를 출력한다.

절대/상대 오차는 10−610^{-6}까지 허용한다.

예제1

  1. 예제 1

    입력
    3
    1 5
    4 8
    6 4
    6
    3 3
    9 2
    2 6
    3 11
    8 8
    11 9
    
    예상 출력
    14.705481427 13.0
    20.964080018 21.5
    20.964080018 21.5
    26.052398802 32.0
    27.149459401 45.5
    30.762066116 62.0