22寒假专题训练(2)1.15--B

阅读 19

2022-01-15

计蒜客T1526计算并集

题目直通车

题目

给你两个集合,要求 {A} + {B}。

注:同一个集合中不会有两个相同的元素。

输入

每组输入数据分为三行,第一行有两个数字 n,m(0<n,m≤10000),分别表示集合 A 和集合 B 的元素个数。后两行分别表示集合 A 和集合 B。每个元素为不超出int范围的整数,每个元素之间有一个空格隔开。

输出

针对每组数据输出一行数据,表示合并后的集合,要求从小到大输出,每个元素之间有一个空格隔开。

样例输入1:

1 2
1
2 3

样例输出1:

1 2 3

样例输入2:

1 2
1
1 2

样例输出2:

1 2

代码1(Python):

m, n = map(int, input().split())

p = []

b = list(map(int, input().split()))
p.extend(b)

b = list(map(int, input().split()))
p.extend(b)


p = set(p)
p = sorted(p)
le = len(p)

for i in range(0, le):
    print(p[i], end=' ')

代码2(C++):

#include <iostream>
#include <set>
using namespace std;

int main()
{
    int n, m;
    set<int> s;
    cin >> n >> m;
    int temp;
    for (int i = 0; i < n + m; i++)
    {
        cin >> temp;
        s.insert(temp);
    }
    set<int>::iterator it = s.begin();
    cout << *it;
    for (it++; it != s.end(); it++)
    {
        cout << " " << *it;
    }
}

精彩评论(0)

0 0 举报