题意:问两组字符串,最多有多少组相同。
解题:可以直接用map映射一下,很方便但是速度不快。队友是用c串读入,排个序,然后扫一遍,速度快很多。
代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <map>
#include <string>
using namespace std;
int main()
{
int n,ans=0;
string s;
while(cin>>n)
{
ans=0;
map <string,int> cnt;
for(int i=0;i<n;i++)
{
cin>>s;
cnt[s]++;
}
for(int i=0;i<n;i++)
{
cin>>s;
if(cnt[s])
{
cnt[s]--;
ans++;
}
}
cout<<ans<<endl;
}
return 0;
}