刘学习的会模糊的卡诺图
Background
“刘学习虽然走了,但是他永远地活在了我们的题面里。”
Description
在本题中,一个“卡诺图”可以视为一个n * m且元素大小仅为0或者1的矩阵。
刘学习有一个初始卡诺图,他的卡诺图比较神奇,会自发地进行“模糊”操作,模糊操作定义如下:
x y表示将第x行y列的元素模糊为0(即原来是1则变成0,原来是0则不发生变化)
现给出q个操作,对于每个操作,你需要告诉刘学习他的卡诺图在操作后“由1构成的连通块”的个数。注意,每次模糊操作进行后不会复原,即你在考虑第i个操作时,也要考虑前i-1个操作的效果。
“由1构成的连通块”理解为“一片相邻的1”,两个1相邻指的是其中一个1在另一个1的正上方、正下方、正左方或正右方一个单位的位置,例如:
对于卡诺图
1 0 1 1 0 1
0 1 1 1 0 1
1 0 0 1 0 0
“由1构成的连通块”的个数为4。
Format
Input
第一行两个正整数n m描述卡诺图的大小。1<=n, m<=1000。
接下来n行每行m个正整数,每个正整数0 或 1,用来描述卡诺图的内容。
接下来一行一个正整数q表示操作个数。1<=q<=100000。
接下来q行每行两个正整数x y表示对第x行y列进行模糊操作。
注意,若输入矩阵为
1 0 1 1 0 1
0 1 1 1 0 1
1 0 0 1 0 0
则左上角坐标为(1,1),右下角坐标为(3,6)。
Output
Sample 1
Input
3 6
1 0 1 1 0 1
0 1 1 1 0 1
1 0 0 1 0 0
4
2 2
3 3
2 4
1 3
Output
4
4
5
6
Limitation
1s, 64Mb for each test case.
Hint
Source
2019网宿杯XMU程序设计竞赛现场赛
信息
- ID
- 1008
- 难度
- 8
- 分类
- (无)
- 标签
- (无)
- 递交数
- 90
- 已通过
- 7
- 通过率
- 8%
- 上传者
相关
在下列比赛中: