#P16194. [Ncpc2016]Artwork艺术品

[Ncpc2016]Artwork艺术品

题目描述

有一张用于创作艺术品的白色网格,共有 n×mn\times m 个小方格。

接下来要依次画 qq 条黑色笔画。每条笔画都是水平或竖直的一段,从格子 (x1,y1)(x_1,y_1) 到格子 (x2,y2)(x_2,y_2),其中满足 x1=x2x_1=x_2y1=y2y_1=y_2。这条笔画会把所有满足

x1xx2,y1yy2x_1\le x\le x_2,\qquad y_1\le y\le y_2

的格子 (x,y)(x,y) 都染成黑色。

艺术品的“美观度”定义为当前白色格子形成的连通块数量。两个白色格子如果可以通过上下左右相邻的白色格子路径互相到达,就属于同一个区域。斜向相邻不算连通。

初始时整张网格全是白色,因此美观度为 11。请在每次新笔画画完后,输出当前艺术品的美观度。

下图展示了样例 1 中每一步后的美观度变化。

输入格式

第一行包含三个整数 n,m,qn,m,q,分别表示网格的行数、列数和笔画数量。

接下来 qq 行,每行包含四个整数 x1,y1,x2,y2x_1,y_1,x_2,y_2,表示一条笔画。

数据保证:

  • 1n,m10001\le n,m\le 1000
  • 1q1041\le q\le 10^4
  • 1x1x2n1\le x_1\le x_2\le n
  • 1y1y2m1\le y_1\le y_2\le m
  • 每条笔画满足 x1=x2x_1=x_2y1=y2y_1=y_2,即一定是水平或竖直的。

输出格式

对于每一条笔画,输出一行一个整数,表示画完该笔画后白色区域的数量。

样例输入 #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

1
3
3
4
3