题目描述
给你一张 n 个点的简单无向图。
接下来有 q 次操作,每次操作为添加一条边或删去一条边,请在每次操作后判断图中是否有四元环。
输入格式
本题有特殊的读入格式,具体见下发文件的 duru.cpp
。
第一行两个整数 n,q。
接下来读入一个 n×n 的 01 矩阵表示这张图的邻接矩阵 a1…n,1…n,这部分采用特殊的方法读入。
接下来 q 行,每行两个整数 u,v。若 (u,v) 这条边存在则本次操作为将其删去,否则本次操作为将其加入。
输出格式
共 q 行,每行一个字符串 Yes
或 No
。
5 10
<0
01
11
10
60
2 5
4 5
1 5
1 3
1 3
1 3
4 5
3 5
3 4
4 5
No
Yes
Yes
No
Yes
No
No
No
No
No
提示
样例解释 #1
读入的邻接矩阵解密后为:
00110
00001
10001
10000
01100
即初始有边 (1,3),(1,4),(2,5),(3,5)。
第两次操作后有 (1,3),(1,4),(4,5),(3,5) 四条边,存在一个四元环 (3,1,4,5)。
第五次操作后有 (1,3),(1,5),(1,4),(4,5),(3,5) 五条边,存在一个四元环 (3,1,4,5)。
第十次操作后有 (1,4),(1,5),(3,4),(4,5) 四条边,不存在四元环。
数据规模与约定
本题采用捆绑测试。
子任务编号 |
n,q≤ |
分数 |
1 |
50 |
5 |
2 |
100 |
10 |
3 |
1000 |
20 |
4 |
5000 |
30 |
5 |
104 |
35 |
对于所有数据,保证 1≤n,q≤104,1≤u,v≤n,u=v,ai,j=aj,i,ai,i=0。