活动地址: 牛客春招刷题训练营 - 编程打卡活动 #include<bits/stdc++.h> #include<iostream> #include<algorithm> #include <iterator> #include<map> using namespace std; #define int long long const int N =2e5+10; struct st{ char a; int m=0; }p[N]; bool cmp(st x,st y){ if(x.m!=y.m){ return x.m>y.m; } return x.a<y.a; } void solve(){ int n,m; string s[N]; // 用来存储候选人 cin>>n; map<string,int>ma;// 用来存储候选人及他们的票数 set<string>st; // 这个用来判断是否是候选人 \// 但其实可以用map来判重的 for(int i=1;i<=n;i++){ cin>>s[i]; ma[s[i]]=0; st.insert(s[i]);// 插入 } cin>>m; int cnt=0; for(int i=1;i<=m;i++){ string a; cin>>a; if(ma.count(a)==0){ // 判断是否是候选人 cnt++; continue; } ma[a]++; } //set<string>::iterator it; for(int it = 1;it<=n;it++){ // 从头开始遍历 cout<<s[it]<<" : "<<ma[s[it]]<<"\n"; } cout<<"Invalid : "<<cnt; } signed main(){ int T=1; //cin>>T; while(T--){ solve(); } return 0; } 活动地址: 牛客春招刷题训练营 - 编程打卡活动