【題目敘述】https://zerojudge.tw/ShowProblem?problemid=e557
【解題想法】
- set stA:Alice拿到的卡牌種類
- set stB:Betty拿到的卡牌種類
- set st:stA 與 stB 的聯集
- st.size() – stA.size():Alice 獨有的卡牌種類
- st.size() – stB.size():Betty 獨有的卡牌種類
#include <iostream>
#include <set>
using namespace std;
int main() {
int A, B, n;
while (cin >> A >> B){
if (A == 0 && B == 0) break;
set <int> stA, stB, st;
for (int i = 0; i < A; i++){
cin >> n;
stA.insert(n);
st.insert(n);
}
for (int i = 0; i < B; i++){
cin >> n;
stB.insert(n);
st.insert(n);
}
cout << min(st.size() - stA.size(), st.size() - stB.size()) << "\n";
}
return 0;
}