#P1471. 资源锁

资源锁

题目描述

已知薯条哥有nn份资源,编号为1,2,...n1,2,...,n初始均处于未上锁状态。mm次操作,每一次操作给出一个编号pp,如果pp所对应的资源未上锁,则为其上锁;否则,解除锁,使其回到未上锁状态;

每一次操作之后,薯条哥都希望分别统计闭区间[1,x][y,n][1,x],[y,n]中可访问的资源数量。这里规定,一个资源可访问,当且仅当其处于未上锁状态。

输入描述

本题为多组测试数据,第一行输入一个正整数T(1T103)T(1\le T\le 10^3)代表测试数据的组数。对于每组测试数据,

第一行输入四个正整数n,m,x,y(1n,m2×105,1x,yn)n,m,x,y(1\le n,m\le 2\times 10^5, 1\le x,y\le n),依次代表资源数量,操作次数,以及两个闭区间范围的边界。

接下去mm行,每行输入一个正整数p(1pn)p(1\le p\le n),代表对编号为PP的资源进行操作。

题目保证,所有测试数据的nn之和不会超过2×105,m2\times 10^5,m之和不会超过2×1052\times 10^5

输出描述

对于每一个操作,一行输出两个整数,第一个整数代表闭区间[1,x][1,x]中可访问的资源数量;

第二个整数代表闭区间[y,n][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

样例解释

yy表示资源上锁,nn表示资源未上锁。以第一组测试数据为例:

第一次操作后,资源上锁情况为:nynnn,y,n,n,可以发现,区间[1,2][1,2]中只有编号11可访问,而区间[3,4][3,4]均未上锁,所以输出11 22

第二次操作后,资源上锁情况为:nyynn,y,y,n,可以发现,区间[1,2][1,2]情况不变,区间[3,4][3,4]中只剩下编号44可访问,所以输出11 11

第三次操作,将资源33解锁,重新回到了第一次操作后的状态,因此输出与第一次操作后的输出相同,输出11 22