乐乐小朋友正在玩一个小球装箱的游戏。现在有N个小球(编号为1到N),每个小球有一种颜色(红色或者绿色),并且每个小球上都标有一个数字。现在有两个不同的球箱A和B,乐乐想把这些球放进这两个球箱里面,并且保证:
1. 每个球箱中球的数量要一样多。
2. 球箱A中的任意一个球上的数字不小于球箱B中任意一个球上的数字。
3. 如果红色小球和绿色小球上的数字相同时,红色小球优先放入球箱A。
装箱完成后,乐乐想知道A、B两个球箱中红色小球和绿色小球各有多少个。由于球的数量比较多,请你编程计算一下吧。
输入共N+1行。
第1行是一个整数N(2≤N≤100000),表示小球的总数。
接下来N行,第i+1 行两个整数Mi(1≤Mi≤20000)和Pi(Pi为0或者1),其中Mi表示第i 个小球上面的数字,Pi表示第i 个小球的颜色,0表示小球是红色,1表示小球是绿色。
数据保证球的个数N为偶数。
输出共2行。
第1行两个整数,分别表示球箱A中红色小球和绿色小球的数量。
第2行两个整数,分别表示球箱B中红色小球和绿色小球的数量。
6
1 1
3 0
2 1
4 1
6 0
5 0
2 1
1 2
【样例1解释】
有6个小球,3个红色,3个绿色。将标有数字4,6,5的三个小球装在箱子A中,其他三个小球装在箱子B中,箱子A中的三个小球2个是红色,1个是绿色,而箱子B中的小球1个红色,2个绿色。
【输入样例2】
8
2 1
2 0
2 0
4 1
2 0
5 1
8 1
1 1
【输出样例2】
1 3
2 2
【样例2解释】
有8个小球,其中有3个标有数字2的红色小球,标有数字1、2、4、5、8的绿色小球各1个。将标有数字4、5、8的3个绿色小球和1个标有数字2的红色小球放入球箱A,将另外2个标有数字2的红色小球,1个标有数字2的绿色小球和1个标有数字1的绿色小球放入球箱B。注意,放入球箱A中标有数字2的小球是红色,因为它比标有数字2的绿色小球更优先放入球箱A。
【数据范围约定】
对于60%的数据,1≤N≤10000,1≤Mi≤10000,且保证各小球上标有的数字都不一样。
对于100%的数据,1≤N≤100000,1≤Mi≤20000。