集合运算 1
题目背景
集合是数学中的一个概念,用通俗的话来讲就是:一大堆数在一起就构成了集合。
集合有如下的特性:
- 无序性:任一个集合中,每个元素的地位都是相同的,元素之间是无序的。
- 互异性:一个集合中,任何两个元素都认为是不相同的,即每个元素只能出现一次。
- 确定性:给定一个集合,任给一个元素,该元素或者属于或者不属于该集合,二者必居其一,不允许有模棱两可的情况出现。
元素 $a$ 属于集合 $A$ 记作 $a\in A$,反之则记作 $a\notin A$。
若一个集合中不存在任何元素,则称该集合为空集,记作 $\varnothing$。空集是所有集合的子集。
一个集合内的元素个数称为该集合的大小。$A$ 集合的大小可记作 $|A|$。
集合 $C$ 是集合 $A$ 与 $B$ 的交集,当且仅当对于任何元素 $a\in C$,有 $a\in A$ 且 $a\in B$,并且对于任何元素 $b\notin C$,有 $b\notin A$ 或 $b\notin B$。记作 $C=A\cap B$。
集合 $C$ 是集合 $A$ 与 $B$ 的并集,当且仅当对于任何元素 $a\in C$,有 $a\in A$ 或 $a\in B$,并且对于任何元素 $b\notin C$,有 $b\notin A$ 且 $b\notin B$。记作 $C=A\cup B$。
简单地说,交集是由所有同时属于两个集合的元素所构成的,就像两个集合相交;而并集是由所有属于其中任意一个集合的元素所构成的,就像两个集合合并。
特别地,对于形如 $\{x|a\le x\le b\}$ 的集合,可以记作 $[a,b]$。其中,如果左侧符号改为小于号,则左侧中括号改为小括号。右侧同理。
题目描述
现在给予两个集合 $A$ 和 $B$,均由 $0$ 到 $63$ 之间的整数组成。
请依次求出:
- $|A|$
- $A\cap B$
- $A\cup B$
输入输出格式
输入格式
输入四行。
第一行一个整数 $x(0\le x \le 63)$,表示集合 $A$ 的元素个数。
第二行 $x$ 个整数 $a_1,...a_x$,表示集合 $A$ 的各个元素,保证不重复。如果 $A$ 是空集,则这一行没有数字。
第三行一个整数 $y(0\le y \le 63)$,表示集合 $B$ 的元素个数。
第四行 $y$ 个整数 $b_1,...b_x$,表示集合 $B$ 的各个元素,保证不重复。如果 $B$ 是空集,则这一行没有数字。
输出格式
输出三行。
第一行输出一个整数,表示 $|A|$。
第二行输出若干个整数,表示 $A\cap B$ 中对应元素,从小到大输出,用空格隔开。如果是空集,则这一行什么也不输出,保留换行。
第三行输出若干个整数,表示 $A\cup B$ 中对应元素,从小到大输出,用空格隔开。如果是空集,则这一行什么也不输出,保留换行。
输入输出样例
输入样例 #1
4
1 3 5 8
3
3 6 8
输出样例 #1
4
3 8
1 3 5 6 8
输入样例 #2
0
4
1 2 3 4
输出样例 #2
0
1 2 3 4