가로 W, 세로 H인 삼각형 판에서 살아 있는 두 삼각형이 한 변을 공유할 때 놓을 수 있는 겹치지 않는 마름모 조각의 최대 개수를 구한다.
보통7그래프동적 계획법조합론그리디면접 대비아직 제출이 없습니다시간 제한2초메모리 제한512 MB
롬비노 판은 정삼각형으로만 이루어져 있다. 각 삼각형은 살아 있거나 죽어 있다. 롬비노는 마름모 모양의 조각이고, 변을 맞대고 있는 살아 있는 삼각형 두 개를 정확히 덮는다. 한 삼각형을 두 롬비노가 함께 덮을 수는 없다.
죽은 삼각형이 어디인지 주어질 때, 판 위에 동시에 놓을 수 있는 롬비노의 최대 개수를 구하라.
판의 삼각형마다 좌표 (x,y)가 붙는다. (0,0)은 맨 왼쪽 아래 삼각형이고 위쪽을 향한다. 좌표가 (x,y)인 삼각형의 오른쪽 변에 맞닿은 삼각형은 (x+1,y)이고, 위쪽 변에 맞닿은 삼각형이 있다면 그 좌표는 (x,y+1)이다. 왼쪽과 아래쪽은 같은 규칙을 뒤집어 각각 (x−1,y), (x,y−1)이 된다.
너비가 W이고 높이가 H인 판은 0≤x<W, 0≤y<H를 만족하는 삼각형 전부로 이루어진다. x+y가 짝수인 삼각형은 위쪽을 향하고 홀수인 삼각형은 아래쪽을 향하므로, 위쪽 변이 있는 삼각형은 아래쪽을 향한 삼각형뿐이다. 그림의 판은 너비가 6, 높이가 3이다.
첫째 줄에 정수 W, H, K가 공백으로 구분되어 주어진다. W는 판의 너비, H는 판의 높이, K는 죽은 삼각형의 개수다 (1≤W≤100, 1≤H≤100, 1≤K≤W×H≤1000).
다음 K개의 줄에는 각각 정수 x와 y가 공백으로 구분되어 주어지며 (0≤x<W, 0≤y<H), 좌표가 (x,y)인 삼각형이 죽어 있다는 뜻이다. 여기에 적히지 않은 삼각형은 모두 살아 있다.
동시에 놓을 수 있는 롬비노의 최대 개수를 정수 하나로 출력한다.
그림은 너비 6, 높이 3인 판과 삼각형마다 붙은 좌표를 보여 준다. 첫 번째 예제는 이 판에서 (1,1), (2,2), (4,1), (3,0)이 죽은 경우다.