考点:map容器,set容器
使用set<int> 记录元素
vector<int>v[n] v[i]存储i组中的元素
map<int,int> 记录元素的个数
#include<bits/stdc++.h>
using namespace std;
const int MAXSIZE=1001;
int main() {
int n,m;
cin>>m;
while(m--) {
cin>>n;
set<int> se;
int a[n],x;
vector<int> v[MAXSIZE];
map<int,int> ma2;
for(int i=0; i<n; i++) {
cin>>a[i];
ma2[a[i]]=0;
}
for(int i=0; i<n; i++) {
cin>>x;
se.insert(x);
v[x].push_back(a[i]);
}
for(auto it=se.begin(); it!=se.end(); it++) {
map<int,int> ma=ma2;
for(int i=0; i<v[*it].size(); i++) {
ma[v[*it][i]]++;
}
cout<<*it<<"={";
for(auto it2=ma.begin(); it2!=ma.end(); it2++) {
if(it2==ma.begin()) {
cout<<it2->first<<"="<<it2->second;
} else {
cout<<","<<it2->first<<"="<<it2->second;
}
}
cout<<"}"<<endl;
}
}
return 0;
}