zoukankan      html  css  js  c++  java
  • 蓝桥杯 集合运算 set

    问题描述
      给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。
    输入格式
      第一行为一个整数n,表示集合A中的元素个数。
      第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素。
      第三行为一个整数m,表示集合B中的元素个数。
      第四行有m个互不相同的用空格隔开的整数,表示集合B中的元素。
      集合中的所有元素均为int范围内的整数,n、m<=1000。
    输出格式
      第一行按从小到大的顺序输出A、B交集中的所有元素。
      第二行按从小到大的顺序输出A、B并集中的所有元素。
      第三行按从小到大的顺序输出B在A中的余集中的所有元素。
    样例输入
    5
    1 2 3 4 5
    5
    2 4 6 8 10
    样例输出
    2 4
    1 2 3 4 5 6 8 10
    1 3 5
    样例输入
    4
    1 2 3 4
    3
    5 6 7
    样例输出
    1 2 3 4 5 6 7
    1 2 3 4
    库函数大法好。
    参考自https://blog.csdn.net/qq_41979513/article/details/103191842
     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 vector<int> a;
     4 vector<int> b;
     5 vector<int> c;
     6 void Print(vector<int> &c){
     7     for (int i = 0; i < c.size(); i++) {
     8         cout << c[i] << " ";
     9     }
    10     cout << endl;
    11     c.clear();
    12 }
    13 int main(){
    14     int m, n, temp;
    15     cin >> m;
    16     for (int i = 0; i < m; i++){
    17         cin >> temp;
    18         a.push_back(temp);
    19     }
    20     cin >> n;
    21     for (int i = 0; i < n; i++){
    22         cin >> temp;
    23         b.push_back(temp);
    24     }
    25     sort(a.begin(), a.end());
    26     sort(b.begin(), b.end());
    27     set_intersection(a.begin(), a.end(), b.begin(), b.end(), back_inserter(c));
    28     Print(c);
    29     set_union(a.begin(), a.end(), b.begin(), b.end(), back_inserter(c));
    30     Print(c); 
    31     set_difference(a.begin(), a.end(), b.begin(), b.end(), back_inserter(c));
    32     Print(c); 
    33     return 0;
    34 }
  • 相关阅读:
    Tomcat自动部署
    java环境配置
    django-crispy-forms入门指南
    hibernate级联删除
    bzoj1659: [Usaco2006 Mar]Lights Out 关灯
    bzoj1658: [Usaco2006 Mar]Water Slides 滑水
    bzoj5470 / P4578 [FJOI2018]所罗门王的宝藏(差分约束)
    P2864 [USACO06JAN]树林The Grove
    bzoj1651 / P2859 [USACO06FEB]摊位预订Stall Reservations
    bzoj1647 / P1985 [USACO07OPEN]翻转棋
  • 原文地址:https://www.cnblogs.com/fx1998/p/12700089.html
Copyright © 2011-2022 走看看