https://blog.csdn.net/zhanshen112/article/details/84719344
##参考上面一篇博客,输出字符串的时候,要用到c_str()函数,
string date;
cin>>date;
printf("Case %d: 3 %s\n",i,date.c_str());
#include<unordered_map>
精髓部分!!!!
通过map来统计一个考场的人数,然后再将考场号和人数写在一个结构体里,再输出结构体。
vector<site> ans;
unordered_map<string,int> m;
for(int i = 0;i<n;i++)
{
if(v[i].id.substr(4,6)==date)
{
string tt = v[i].id.substr(1,3);
m[tt]++;
}
}
for(auto it : m)
{
site temp;
temp.sitenum = it.first;
temp.sum = it.second;
ans.push_back(temp);
}
sort(ans.begin(),ans.end(),cmp2);
for(int i = 0;i<ans.size();i++)
{
printf("%s %d\n",ans[i].sitenum.c_str(),ans[i].sum);
}
if(ans.size()==0)
{
printf("NA\n");
}