题目:
第一题,输入两个集合,分别求其交集和并集中元素的个数,每个集合中可能存在相同的元素,而最终的交集和并集中应该不存在。
例如:
输入:
4 5
3 4 7 3
4 6 3 2 6
输出:
2 5
显然送分题。set就可以解决。
#include<iostream>
#include<set>
using namespace std;
int main()
{
int m,n;
cin>>m>>n;
set<int> a,b,c;
for (int i=0;i<m;i++)
{
int temp;cin>>temp;
a.insert(temp);
c.insert(temp);
}
for (int i=0;i<n;i++)
{
int temp;cin>>temp;
b.insert(temp);
c.insert(temp);
}
int count1=a.size()+b.size()-c.size();//交集
int count2=c.size();//并集
cout<<count1<<" "<<count2;
return 0;
}