给两组字符串,最多有多少对相同。
map做映射判断一下。
1 #include <iostream> 2 #include <cstdio> 3 #include <map> 4 #include <string> 5 using namespace std; 6 map<string,int> mp; 7 string s; 8 int n,ans; 9 int main() 10 { 11 while(~scanf("%d",&n)) 12 { 13 ans=0; 14 mp.clear(); 15 for(int i=1;i<=n;i++) 16 { 17 cin>>s; 18 mp[s]++; 19 } 20 for(int i=1;i<=n;i++) 21 { 22 cin>>s; 23 if(mp[s]) 24 { 25 mp[s]--; 26 ans++; 27 } 28 } 29 printf("%d ",ans); 30 } 31 }