AcWing 5720. 相似度计算(只用库函数,坚决不用脑子)
原题链接
简单
作者:
灰末
,
2024-11-23 21:06:32
,
所有人可见
,
阅读 19
使用set_intersection求交集,注意字符串必须先排序
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
map<string,bool>mp,mp1,mp2;
vector<string>a,b,c;
int main()
{
int m,n;
cin>>m>>n;
for(int i=0;i<m;i++)
{
string s;cin>>s;
transform(s.begin(),s.end(),s.begin(),::tolower);
if(!mp1[s])a.push_back(s);
mp[s]=1;
mp1[s]=1;
}
for(int i=0;i<n;i++)
{
string s;cin>>s;
transform(s.begin(),s.end(),s.begin(),::tolower);
if(!mp2[s])b.push_back(s);
mp[s]=1;
mp2[s]=1;
}
sort(a.begin(),a.end());sort(b.begin(),b.end());
set_intersection(a.begin(),a.end(),b.begin(),b.end(),inserter(c,c.begin()));
cout<<c.size()<<endl;
cout<<mp.size()<<endl;
}