1174: [模拟]集合的运算

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:50 Solved:36

Description

在计算机科学应用中,我们经常要用到集合的运算,集合的运算操作有很多,下面是我们给出的集合基本运算定义:
  (1)"∪"运算:设S,T是2个集合,那么S∪T是由S和T的元素组成的集合。
  (2)"-"运算:设S,T是2个集合,那么S-T是由S中非T中的元素组成的集合。
  (3)"∩"运算:设S,T是2个集合,那么S∩T是由既是S又是T的元素组成的集合。
  (4)"⊕"运算:设S,T是2个集合,那么S⊕T是由S中不是T中的元素和T中不是S中的元素组成的集合。
例如,S={1,2,3,4},T={3,4,5,6},那么:
   S∪T={1,2,3,4,5,6}
   S-T={1,2}
   S∩T={3,4} S⊕T={1,2,5,6}
你的任务就是:对于输入文件中给出的正整数集合S、T,编程求出S∪T,S-T,S∩T和S⊕T。

Input

第1行,为集合S的各元素;第2行,为集合T的各元素;每行数据之间用空格分开,集合元素的个数≤10000,各正整数在1到30000之间。

Output

第1行为集合S∪T;第2行为集合S-T;第3行为集合S∩T;第4行为集合S⊕T。
  要求:
  集合的元素按由小到大顺序输出,正整数之间用空格分开;如果是空集,则输出-1。

Sample Input Copy

9 3 7 6 5
10 5 4 3 2 7

Sample Output Copy

2 3 4 5 6 7 9 10
6 9
3 5 7
2 4 6 9 10

Source/Category