아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

벌집 전염병

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

요약
육각 격자에서 세균보다 먼저 도착할 수 있는 안전 구역에 벌을 배치해 구할 수 있는 벌 수를 구합니다.
난이도

보통10점 중 7점

유형
그래프, 기하
정답자
아직 제출이 없습니다

문제

벌 독감이 벌집을 휩쓸고 있다. 이너 드레디드 일네시아의 벌들은 벌집의 몇몇 칸을 안전 구역으로 비워 두었다. 세균보다 먼저 안전 구역에 들어간 벌은 전염병을 피한다. 꿀을 둘 자리도 있어야 해서 안전 구역은 벌보다 훨씬 적으므로, 벌들은 자리를 나눠 잡아야 한다. 최대 몇 마리를 구할 수 있는지 구하라.

벌집은 육각형 격자다. 칸마다 좌표 (x,y)(x, y)가 붙어 있고, 칸 (x,y)(x, y)는 (x+1,y)(x+1, y), (x−1,y)(x-1, y), (x,y+1)(x, y+1), (x,y−1)(x, y-1), (x+1,y−1)(x+1, y-1), (x−1,y+1)(x-1, y+1) 여섯 칸과 맞닿는다. 좌표가 어떻게 이어지는지는 그림에 나와 있다. 벌집은 아주 넓어서 어떤 벌도 가장자리에 닿지 못한다.

  • 벌은 1초마다 이웃한 칸으로 한 칸 움직이거나 제자리에 머문다. 육각 거리가 mm인 칸에는 mm초 만에 도착한다.
  • 세균은 처음부터 자기 칸을 차지하고 있고, 2초에 한 번 퍼진다. 첫 확산은 2초 직후, 두 번째 확산은 4초 직후에 일어난다. kk번째 확산이 끝나면 세균은 처음 칸에서 육각 거리가 kk 이하인 칸을 모두 차지한다.
  • 안전 구역은 움직이지 않는다. 세균이 아직 닿지 않은 안전 구역에 벌이 들어가 그대로 머물면 그 벌은 살아남는다. 벌은 첫 확산 전에 두 번 움직이므로, 세균이 kk번째 확산으로 닿는 안전 구역에 2k2k초에 도착한 벌은 늦지 않았다.
  • 0초에 이미 안전 구역에 서 있는 벌은 아직 살아남은 것이 아니다. 미리 숨어 있는 것으로 치지 않기 때문이다. 한 번 움직인 뒤인 1초가 가장 이른 시각이고, 제자리에 머무는 것도 한 번 움직인 것으로 센다.
  • 안전 구역 하나에서는 벌 한 마리만 살아남는다. 다른 칸에서는 벌끼리 서로 방해하지 않고, 이동하는 중에는 여러 마리가 같은 칸에 있어도 된다.
  • 안전 구역에 도착하는 순간만 따진다. 이동하는 벌이 도중에 막히거나 감염되는 일은 없다.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다. 각 테스트 케이스는 네 줄로 이루어진다. 첫 줄에는 벌의 수 NN, 안전 구역의 수 SS, 세균 군집의 수 BB가 주어진다. 둘째 줄에는 벌이 출발하는 칸이 x1 y1 x2 y2 … xN yNx_1\ y_1\ x_2\ y_2\ \dots\ x_N\ y_N 형식으로 주어진다. 셋째 줄에는 안전 구역 SS개가, 넷째 줄에는 세균이 출발하는 칸 BB개가 같은 형식으로 주어진다.

  • 0<T≤1500 < T \le 150
  • 0<N,S≤500 < N, S \le 50
  • 0<B≤15000 < B \le 1500
  • −100≤xi,yi≤100-100 \le x_i, y_i \le 100
  • 두 안전 구역이 같은 칸에 있는 경우는 없다. 나머지 칸은 겹쳐도 된다. 여러 벌이 같은 칸에서 출발해도 되고 세균 군집도 마찬가지이며, 벌이 안전 구역이나 세균이 있는 칸에서 출발할 수도 있다.

출력

각 테스트 케이스마다 살아남을 수 있는 벌의 최대 마릿수를 한 줄에 출력한다.

예제2

  1. 예제 1

    입력
    1
    2 2 1
    -1 2 1 -2
    -3 1 1 1
    -1 -1
    
    예상 출력
    2
    
  2. 예제 2

    입력
    4
    1 1 1
    6 0
    2 0
    0 0
    1 1 1
    10 0
    3 0
    0 0
    1 1 1
    0 0
    0 0
    0 0
    1 1 1
    0 0
    0 0
    5 0
    
    예상 출력
    1
    0
    0
    1