일부 칸이 꺼진 격자(직사각형들의 합집합)가 주어질 때, 시작 칸으로 돌아오며 첫 발과 마지막 발이 다른 행-열 교대 춤으로 모든 켜진 칸을 덮도록 뒤집어야 할 최소 칸 수를 구한다.
어려움9그래프그리디수학구현아직 제출이 없습니다시간 제한5초메모리 제한512 MB대릴은 디스코 댄스 덴이라는 디스코 클럽을 운영한다. 이 클럽의 무대는 m×n 격자이고, 처음에는 모든 칸에 불이 켜져 있다. 음악이 시작되면 그중 일부 칸의 불이 꺼진다.
디스코 댄스는 음악이 흐르는 동안 밟는 두 걸음 이상의 동작이다. 디스코 댄스의 마지막 걸음은 무용수가 처음 서 있던 칸을 밟아야 한다.
무용수는 춤추는 동안 불이 켜진 칸만 밟는다. 켜진 칸을 밟는 순간 그 칸의 불은 꺼진다. 또 무용수는 다음 네 조건을 항상 지킨다.
무대의 모든 칸이 꺼지면 대릴의 디스코 댄스 덴이 어두워졌다고 한다.
대릴은 무용수 무리에게 이런 내기를 건다.
예를 들어 초기 상태가 다음 그림과 같다고 하자.

이때 아래 그림 왼쪽에 표시된 칸에서 두 무용수가 시작하면 내기를 성공시킬 수 있다.

두 무용수가 춤을 마치면 켜져 있던 칸을 모두 밟았으므로 디스코 댄스 덴은 어두워진다. 두 무용수 모두 네 조건을 지켰다.
무용수들이 이 내기를 성공시킬 수 있는가? 성공시킬 수 없다면, 음악이 시작된 직후의 상태에서 켜짐과 꺼짐을 뒤집어야 하는 칸의 최소 개수는 몇 개인가?
첫 줄에 테스트 케이스의 수 T가 주어진다. 이어서 테스트 케이스가 하나씩 주어진다.
각 테스트 케이스의 첫 줄에는 세 정수 m, n, k가 공백으로 구분되어 주어진다. 차례대로 무대의 행 개수, 열 개수, 음악이 시작될 때 불이 꺼지는 칸 묶음의 개수이다.
다음 k개 줄에는 네 정수 i0, j0, i1, j1이 공백으로 구분되어 주어진다. i0≤i≤i1이고 j0≤j≤j1인 모든 i, j에 대해 i행 j열 칸이 음악이 시작될 때 꺼진다는 뜻이다. 묶음끼리 겹칠 수 있다.
제한
각 테스트 케이스마다 한 줄에 정수 N 하나를 출력한다. N은 무용수들이 내기를 성공시킬 수 있도록 켜짐과 꺼짐을 뒤집어야 하는 칸의 최소 개수이다. 이미 성공시킬 수 있다면 0을 출력한다.
첫 번째 예제의 첫 테스트 케이스에서는 꺼지는 칸 묶음이 서로 겹친다. 4행 2열 칸 하나만 뒤집으면 위 그림의 무대와 똑같아지므로 답은 1이다.