HM224 集合盘点
HM224 集合盘点
来源: 第 224 集 set容器-大小和交换
难度: 普及-
时间限制: 1s
空间限制: 64MB
题目描述
集合是不允许重复元素的关联容器。插入只能用 insert,没有 push_back。无论插入顺序是否打乱,遍历时一定按升序出现。
集合只提供两种大小查询,**不提供** resize:若强行把长度改大并用 \(0\) 填充,会出现重复的 \(0\),这与集合“元素互异”矛盾。因此只能:
empty():判断是否为空;size():返回当前元素个数。
两个集合可以用 swap 互换全部元素,交换后各自仍保持有序。
先把两段整数序列分别 insert 进 s1、s2。输出 s1 是否为空及其大小,再打印交换前的 s1、s2,执行 s1.swap(s2) 后再次打印二者。打印使用迭代器从 begin 走到 end,元素之间一个空格。
输入格式
第一行一个整数 \(n_1\)。
第二行 \(n_1\) 个整数,按给定顺序插入 s1。当 \(n_1=0\) 时本行可以是空行。
第三行一个整数 \(n_2\)。
第四行 \(n_2\) 个整数,按给定顺序插入 s2。当 \(n_2=0\) 时本行可以是空行。
输出格式
共五行:
- 若
s1.empty()为真,输出EMPTY和0;否则输出NONEMPTY和s1.size(),中间一个空格; - 交换前的
s1; - 交换前的
s2; - 交换后的
s1; - 交换后的
s2。
空集合对应的那一行只输出换行。
样例
输入 #1
4
10 30 20 40
4
100 300 200 400
输出 #1
NONEMPTY 4
10 20 30 40
100 200 300 400
100 200 300 400
10 20 30 40
输入 #2
0
3
5 1 3
输出 #2
EMPTY 0
1 3 5
1 3 5
说明
\(0 \le n_1,n_2 \le 1000\),元素绝对值不超过 \(10^9\)。
样例 #1 无序插入后自动排成升序;swap 只互换内容,不改变各自的有序性。样例 #2 的 s1 一开始为空,交换后得到原来的 s2,原来的 s1(空)落到 s2。
信息
- ID
- 1223
- 难度
- (无)
- 分类
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者