提交时间:2023-09-15 13:04:32

运行 ID: 102910

#include<bits/stdc++.h> using namespace std; map<string,int>mp; struct node { string x,m; int id; }s[50009]; inline bool cmp(node x,node y) { return (mp[x.x]==mp[y.x])?(x.id<y.id):(mp[x.x]>mp[y.x]); } int main() { string tmp; int n=0; while(cin>>s[++n].x>>s[n].m) mp[s[n].x]++,s[n].id=n; sort(s+1,s+n+1,cmp); for(int i=1;i<=n;i++) cout<<s[i].x<<' '<<s[i].m<<endl; return 0; }