만드는 중입니다

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

확장 공사

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

요약
새 표지판을 하나씩 추가할 때마다, 지금까지의 모든 표지판을 감싸는 가장 작은 볼록 다각형의 둘레와 넓이를 구합니다.
난이도

보통10점 중 7점

유형
기하, 이분 탐색, 구현
정답자
아직 제출이 없습니다

문제

키위는 가지 농사를 위해 새로운 땅을 찾고 있다. 키위의 친구 유틸은 평지에 NN개의 표지판을 세우고, 그 자리에서 농사를 시작하라고 제안했다. 단, 키위는 주어진 표지판을 모두 포함하는 볼록 다각형 중 넓이가 가장 작은 다각형 안에서만 농사를 지을 수 있다.

키위는 가지 농사를 시작했다. 농사 상태를 확인하러 온 유틸은 키위가 열심히 가지를 키우는 모습에 감동하여 이렇게 말했다. "앞으로 QQ일 동안 매일 새로운 표지판을 하나씩 세울 거야. 기존 표지판과 새로 세운 표지판을 모두 포함하는 넓이가 가장 작은 볼록 다각형이 너의 새 농지야. 축하해! 나도 주민 센터에 농지를 새로 보고해야 해서 그러는데, 새 농지의 둘레와 넓이를 매일 알려주지 않을래?"

입력

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

다음 NN개의 줄에 각 표지판의 위치 xix_i와 yiy_i가 공백으로 구분되어 정수로 주어진다(0≤xi,yi≤1090 \le x_i, y_i \le 10^{9}).

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

다음 QQ개의 줄에 새로 세우는 각 표지판의 위치 aia_i와 bib_i가 공백으로 구분되어 정수로 주어진다(0≤ai,bi≤1090 \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