만드는 중입니다

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

미술 작품

시간 제한4초메모리 제한512 MB

요약
격자에 가로 또는 세로 검은 획을 하나씩 칠하면서, 매 획을 칠 때마다 흰 칸이 이루는 연결 영역의 개수를 구한다.
난이도

어려움10점 중 8점

유형
유니온 파인드, 구현, 그래프, 시뮬레이션
정답자
아직 제출이 없습니다

문제

작품의 밑그림은 흰색 칸 n×mn \times m개로 이루어진 격자이다. 이 격자 위에 가로 또는 세로 방향의 검은색 선 qq개를 그어서 작품을 완성한다.

선 하나는 칸 (x1,y1)(x_1, y_1)에서 시작해 칸 (x2,y2)(x_2, y_2)에서 끝나며, x1=x2x_1 = x_2 또는 y1=y2y_1 = y_2를 만족한다. 이 선은 x1≤x≤x2x_1 \le x \le x_2이고 y1≤y≤y2y_1 \le y \le y_2인 모든 칸 (x,y)(x, y)를 검은색으로 바꾼다. 여기서 xx는 행 번호, yy는 열 번호이다.

작품의 아름다움은 격자에 남아 있는 영역의 개수이다. 한 영역은 흰색 칸 하나 이상으로 이루어지고, 같은 영역에 속한 두 칸은 흰색 칸만 밟으면서 위아래 또는 좌우로만 움직여 서로 오갈 수 있다. 대각선으로는 움직일 수 없다. 아직 선을 하나도 긋지 않은 처음 상태의 아름다움은 1이다.

선을 하나 그을 때마다 그 시점의 작품의 아름다움을 구하라.

아래 그림은 예제의 선을 차례로 그을 때 아름다움이 어떻게 변하는지 보여 준다.


그림 1: 예제의 진행 과정.

입력

첫째 줄에 정수 nn, mm, qq가 주어진다. (1≤n,m≤10001 \le n, m \le 1000, 1≤q≤1041 \le q \le 10^4)

다음 qq개의 줄에 선의 정보가 한 줄에 하나씩 주어진다. 각 줄은 정수 x1x_1, y1y_1, x2x_2, y2y_2로 이루어진다. (1≤x1≤x2≤n1 \le x_1 \le x_2 \le n, 1≤y1≤y2≤m1 \le y_1 \le y_2 \le m) 각 선은 x1=x2x_1 = x_2 또는 y1=y2y_1 = y_2를 만족하며, 두 조건이 동시에 성립할 수도 있다. 선은 주어진 순서대로 긋는다.

출력

qq개의 선 각각에 대해, 그 선을 그은 뒤 작품의 아름다움을 한 줄에 하나씩 출력한다.

예제2

  1. 예제 1

    입력
    4 6 5
    2 2 2 6
    1 3 4 3
    2 5 3 5
    4 6 4 6
    1 6 4 6
    
    예상 출력
    1
    3
    3
    4
    3
    
  2. 예제 2

    입력
    1 1 1
    1 1 1 1
    
    예상 출력
    0