병찬이는 친구 공찬이를 위해 피자를 시켰다. 그런데 공찬이는 올리브를 싫어해서 피자를 잘라 먹으려고 한다.
피자는 볼록다각형 모양이고, 올리브는 피자 안에 박혀 있다. 공찬이는 인접하지 않은 두 꼭짓점을 골라 그 두 꼭짓점을 잇는 직선을 따라 피자를 한 번 자른다. 자르고 나면 조각이 두 개 생기고, 공찬이는 그중 올리브가 없는 조각을 골라 먹는다. 다만 자르는 직선 위에 올리브가 있으면 그 올리브가 두 갈래로 잘리므로 두 조각 모두 먹지 못한다.
병찬이는 피자를 많이 먹지 않으므로, 공찬이는 자기가 먹을 조각이 가장 크도록 피자를 자르려고 한다. 공찬이를 도와 얼마나 크게 자를 수 있는지 구하는 프로그램을 작성하여라.
첫째 줄에 피자의 꼭짓점 개수 N이 주어진다.
둘째 줄부터 N개의 줄에 피자의 각 꼭짓점의 좌표 Xi, Yi가 주어진다. 꼭짓점은 시계 반대 방향으로 주어지고, 피자가 이루는 N개의 각은 모두 180도보다 작다.
N+2번째 줄에 올리브의 개수 M이 주어진다.
N+3번째 줄부터 M개의 줄에 올리브의 좌표 Xi, Yi가 주어진다. 올리브가 피자의 변 위에 있거나 피자 밖에 있는 경우는 없다. 올리브는 매우 작아서 점으로 봐도 된다.
공찬이가 어떻게 잘라도 먹을 수 있는 조각이 나오지 않으면 0을 출력한다.
그렇지 않으면 공찬이가 먹을 수 있는 조각의 최대 넓이에 2를 곱한 값을 출력한다. 잘 생각해 보면 이 값은 항상 정수임을 알 수 있다.
모든 좌표는 정수이고 −109 이상 109 이하다. 피자는 볼록다각형이므로 N≥3이다.