问题描述
给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。
解题思路:
练习一下set的用法
#include<cstdio>
#include<iostream>
#include<algorithm>
#define fr(a,b,c) for(int a=b;a<c;a++)
#define read(a) cin>>a
#include<set>
using namespace std;
int main()
{
int n,m;
read(n);
set<int > a,b,c;
int num;
fr(i,0,n)
{
read(num);
a.insert(num);
c.insert(num);
}
read(m);
fr(i,0,m)
{
read(num);
b.insert(num);
c.insert(num);
}
set<int >::iterator it;
bool flag=false;
for(it=a.begin();it!=a.end();it++)
{
if(b.find(*it)!=b.end())
{
cout<<*it<<" ";
flag=true;
}
}
if(flag)
{
cout<<endl;
flag=false;
}
for(it=c.begin();it!=c.end();it++)
{
cout<<(*it)<<" ";
}
cout<<endl;
for(it=a.begin();it!=a.end();it++)
{
if(b.find(*it)==b.end())
{
flag=true;
cout<<*it<<" ";
}
}
if(flag)
{
cout<<endl;
flag=false;
}
}