题解(貌似没啥用,书上有)

ZZQ  •  2年前


代码如下:

#include <bits/stdc++.h>
using namespace std;

map<string,int>freq;

string Key(const string &s)
{
  return s.substr(0,s.find(" "));
}

int Cmp(const string &a,const string &b)
{
  return freq[Key(a)]>freq[Key(b)];
}

int main()
{
  vector<string> v;
  string s1,s2;
  while(cin>>s1>>s2)
  {
    v.push_back(s1+" "+s2);
    ++freq[s1];
  }
  stable_sort(v.begin(),v.end(),Cmp);
  for(int i=0; i<(int)v.size(); i++)
    cout<<v[i]<<endl;
  return 0;
}

评论: