class Solution {
public:
vector<int> intersection(vector<int> a, vector<int> b) {
vector<int> subset;
map<int,bool> m;
for(int i=0;i<a.size();i++){
m[a[i]]=true;
}
for(int j=0;j<b.size();j++){
if(m[b[j]]){
subset.push_back(b[j]);
m[b[j]]=false;
}
}
return subset;
}
};