SWUSTOJ #1045 集合的交运算的实现

SWUSTOJ #1045 集合的交运算的实现

  • 题目
    • 输入
    • 输出
    • 样例输入
    • 样例输出
  • 源代码

题目

假设有两个集合 A 和 B 分别用两个线性表 LA 和 LB 表示,即线性表中的数据元素即为集合中的成员。编程实现集合A和集合B的交运算。

输入

第一行为集合A的数据元素个数n;
第二行输入n个集合A的数据元素 ;
第三行为集合B的数据元素的个数;
第四行输入m个集合B的数据元素

输出

A和B的交集

样例输入

8
0 5 6 3 8 7 9 10
7
1 3 4 7 8 9 5

样例输出

5 3 8 7 9

源代码

#include<iostream>
#include<queue>
#include<algorithm>using namespace std;int main()
{queue<int> St;int arr1[1000];int arr2[1000];int n, m;cin >> m;for (int i = 0; i < m; i++){cin >> arr1[i];}cin >> n;for (int i = 0; i < n; i++){cin >> arr2[i];}for (int i = 0; i<m; i++){for (int j = 0; j < n; j++){if (arr1[i] == arr2[j]){St.push(arr1[i]);}}}while (!St.empty()){cout << St.front()<<" ";St.pop();}return 0;
}

SWUSTOJ #1045 集合的交运算的实现

SWUSTOJ #1045 集合的交运算的实现

  • 题目
    • 输入
    • 输出
    • 样例输入
    • 样例输出
  • 源代码

题目

假设有两个集合 A 和 B 分别用两个线性表 LA 和 LB 表示,即线性表中的数据元素即为集合中的成员。编程实现集合A和集合B的交运算。

输入

第一行为集合A的数据元素个数n;
第二行输入n个集合A的数据元素 ;
第三行为集合B的数据元素的个数;
第四行输入m个集合B的数据元素

输出

A和B的交集

样例输入

8
0 5 6 3 8 7 9 10
7
1 3 4 7 8 9 5

样例输出

5 3 8 7 9

源代码

#include<iostream>
#include<queue>
#include<algorithm>using namespace std;int main()
{queue<int> St;int arr1[1000];int arr2[1000];int n, m;cin >> m;for (int i = 0; i < m; i++){cin >> arr1[i];}cin >> n;for (int i = 0; i < n; i++){cin >> arr2[i];}for (int i = 0; i<m; i++){for (int j = 0; j < n; j++){if (arr1[i] == arr2[j]){St.push(arr1[i]);}}}while (!St.empty()){cout << St.front()<<" ";St.pop();}return 0;
}