题解 | #单词识别#

单词识别

https://www.nowcoder.com/practice/16f59b169d904f8898d70d81d4a140a0

#include <iostream>
#include<string>
#include<algorithm>
#include<vector>
#include<map>
using namespace std;
struct compare{
 bool operator()(const pair<string,int>&kv1,const pair<string,int>&kv2){
    return kv1.second>kv2.second;
 }
};

int main() {
 map<string,int>mp;
 string s;
 while(cin>>s)
 {
    bool flag=false;
    for(char&i:s)
    {
      if(i=='.'||i==',')
      {
        s=s.substr(0,s.size()-1);
      }
      else if(i<='Z'&&i>='A')
      {
        i+=32;
      }
      
    }
    ++mp[s];
 }
vector<pair<string,int>>v(mp.begin(),mp.end());
sort(v.begin(),v.end(),compare());
for(int i=0;i<v.size();i++)
{
   cout<<v[i].first<<":"<<v[i].second<<endl;
}


}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务