题库练习 小球装箱游戏

A71922 | 小球装箱游戏

来源编程题
时间限制1s
内存限制512MB
通过 / 提交0/0

题目描述

老师组织同学们玩一个小球装箱游戏。 现在有 N 个小球(编号为 1N),每个小球有一种颜色(红色或绿色),并且每个小球上都标有一个数字。现在有两个不同的球箱 AB,乐乐想把这些球放进这两个球箱里面,并且保证:

  1. 每个球箱中球的数量要一样多。

  2. 球箱 A 中的任意一个球上的数字不小于球箱 B 中任意一个球上的数字。

  3. 如果红色小球和绿色小球上的数字相同时,红色小球优先放入球箱 A

装箱完成后,同学们想知道 AB 两个球箱中红色小球和绿色小球各有多少个。由于球的数量比较多,请你编程计算一下。

输入格式

1 行是一个整数 n,表示小球的总数。

接下来 N 行,第 i+1 行两个整数 M_iP_i,其中 M_i 表示第 i 个小球上面的数字,P_i 表示第 i 个小球的颜色,0 表示小球是红色,1 表示小球是绿色。

数据保证球的个数 N 为偶数。

输出格式

输出共有 2 行。

1 行两个整数,分别表示球箱 A 中红色小球和绿色小球的数量。

2 行两个整数,分别表示球箱 B 中红色小球和绿色小球的数量。

输入输出样例

输入 #1
6
1 1
3 0
2 1
4 1
6 0
5 0
输出 #1
2 1
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
C++ 编辑器
输入
输出