#B1348. 动态矩阵中山峰统计

动态矩阵中山峰统计

【题目描述】

给定一个 n×mn\times m 海拔矩阵。

之后发生 qq 次地理变迁,每次交换两个格子的海拔。

若一个格子的海拔严格大于上下左右相邻格,则它是山峰。

请在每次变迁后输出当前矩阵中的山峰数量。


【输入描述】

第一行输入两个整数 n,mn,m。

接下来 nn 行输入海拔。

接下来输入整数 qq,表示操作次数。

再接下来 qq 行,每行输入四个整数 x1,y1,x2,y2x_1,y_1,x_2,y_2,表示交换两个格子的海拔。

保证:

  • 1≤n,m≤10001\le n,m\le 1000,1≤q≤1051\le q\le 10^5;
  • 1≤ai,j≤1061\le a_{i,j}\le 10^6。

【输出描述】

输出 qq 行,第 ii 行表示第 ii 次变迁后当前山峰的数量。


【样例 1】

【样例 1 输入】

3 3
1 2 3
1 4 2
1 1 2
2
1 3 3 1
2 2 1 1

【样例 1 输出】

2
2

【样例 2】

【样例 2 输入】

2 3
1 5 2
3 4 6
2
1 2 2 1
2 3 1 1

【样例 2 输出】

2
1

【数据规模与约定】

测试点编号 分数 特殊性质
1 ~ 4 40 n,m≤30n,m\le 30
5 ~ 10 60 n,m≤1000n,m\le 1000,q≤105q\le 10^5