分组统计
set和map的结合题吧,虽然不难,但还是值得记录一下。
多case,注意清空操作,因为这个\(\color{red}{WA}\)了两发。
const int N=110;
int a[N],b[N];
set<int> num,group;
map<int,int> mp[N];
int n;
int main()
{
int T;
cin>>T;
while(T--)
{
for(int i=0;i<N;i++) mp[i].clear();
num.clear(),group.clear();
cin>>n;
for(int i=0;i<n;i++) cin>>a[i],num.insert(a[i]);
for(int i=0;i<n;i++) cin>>b[i],group.insert(b[i]),mp[b[i]][a[i]]++;
for(auto t:group)
{
cout<<t<<'=';
cout<<'{';
int cnt=0;
for(set<int>::iterator it=num.begin();it!=num.end();it++)
{
cnt++;
if(cnt == num.size())
cout<<*it<<'='<<mp[t][*it];
else
cout<<*it<<'='<<mp[t][*it]<<',';
}
cout<<'}'<<endl;
}
}
//system("pause");
return 0;
}