已知塔子哥有n份资源,编号为1,2,...,n初始均处于未上锁状态。
m次操作,每一次操作给出一个编号p,如果p所对应的资源未上锁,则为其上锁;否则,解除锁,使其回到未上锁状态;
每一次操作之后,塔子哥都希望分别统计闭区间[1,x],[y,n]中可访问的资源数量。
这里规定,一个资源可访问,当且仅当其处于未上锁状态。
本题为多组测试数据,第一行输入一个正整数T(1≤T≤1000)代表测试数据的组数。
对于每组测试数据,第一行输入四个正整数
n,m,x,y(1≤n≤2×105;1≤m≤4×105;1≤x,y≤n),依次代表资源数量,操作次数,以及两个闭区间范围的边界。
接下去m行,每行输入一个正整数p(1≤p≤n),代表对编号为P的资源进行操作。
题目保证,所有测试数据的n之和不会超过2×105,m之和不会超过4×105。
对于每一个操作,一行输出两个整数,第一个整数代表闭区间[1,x]中可访问的资源数量;第二个整数代表闭区间[y,n]中可访问的资源数量。
输入
2
4 3 2 3
2
3
3
6 6 4 2
1
3
6
4
4
2
输出
1 2
1 1
1 2
3 5
2 4
2 3
1 2
2 3
1 2
说明
用y表示资源上锁,n表示资源未上锁。
以第一组测试数据为例:
第一次操作后,资源上锁情况为:n,y,n,n,可以发现,区间[1,2]中只有编号1可访问,而区间[3,4]均未上锁,所以输出1 2;
第二次操作后,资源上锁情况为:n,y,y,n,可以发现,区间[1,2]情况不变,区间[3,4]中只剩下编号4可访问,所以输出1 1;
第三次操作,将资源3解锁,重新回到了第一次操作后的状态,因此输出与第一次操作后的输出相同,输出1 2。
扫码备注加群即可,期待您的到来~
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.