题目背景
搬运自 http://czoj.com.cn/p/955。数据为民间数据。
题目描述
小 Y 有一个 n×n 棋盘,开始时这个棋盘每个格子的颜色是白黑相间的,即第一行的第 1,3,5⋯ 个格子是白色,第 2,4,6⋯ 个格子是黑色,第二行第 2,4,6⋯ 个格子是白色,第 1,3,5⋯ 个格子是黑色,如下图所示。
小 Y 会进行 q 次操作,每次操作会将某一行或者某一列的所有格子的颜色反转,即白色格子变成黑色格子,黑色格子变成白色格子。
小 Y 想知道,在每次操作之后,一共有多少个同颜色(全黑或全白)的连通区域。这里联通指的是四连通,即两个格子之间有边相邻才算联通。
输入格式
第 1 行 2 个正整数 n,q,表示棋盘的大小和操作的次数。
第 2 到 q+1 行每行 2 个正整数 opti,ai,若 opti=1 则表示反转的是行,opti=2 则表示反转的是列,ai 表示反转的是第几行(列)。
输出格式
输出 q 行每行一个整数,表示在经过该次操作后,一共有多少个同颜色的联通区域。
提示
样例 1 解释
→→→数据范围
对于所有数据,1≤q,n≤105,1≤opti≤2,1≤ai≤n。
测试点编号 |
n |
q |
特殊性质 |
1∼4 |
≤4 |
≤10 |
无 |
5∼6 |
≤105 |
=1 |
7∼9 |
≤105 |
α |
10 |
无 |
- 特殊性质 α:保证同一个测试点所有的 opti 均相等。