1071. Speech Patterns (25)

来源:互联网 发布:ubuntu linux系统下载 编辑:程序博客网 时间:2024/05/29 12:38

传送门:https://www.patest.cn/contests/pat-a-practise/1071

AC代码

#include <iostream>#include <vector>#include <stdio.h>#include <algorithm>#include <queue>#include <string.h>#include <unordered_map>#include <map>using namespace std;int main(){    char ch;    string str;    int maxSize=-1;    unordered_map<string, int>ans;    vector<string>v;    while (scanf("%c",&ch)!=EOF) {        if(ch=='\n'){            if(str.size()){                ans[str]++;                if(ans[str]>maxSize)                {                    maxSize = ans[str];                    v.clear();                    v.push_back(str);                }else if(ans[str]==maxSize)                    v.push_back(str);            }            break;        }        else{            if(!(('0'<=ch&&ch<='9')||('A'<=ch&&ch<='Z')||('a'<=ch&&ch<='z'))){                if(str.size()==0)                    continue;                ans[str]++;                if(ans[str]>maxSize){                    maxSize = ans[str];                    v.clear();                    v.push_back(str);                }else if(ans[str]==maxSize)                    v.push_back(str);                str.clear();            }            else{                if('A'<=ch&&ch<='Z')                ch = ch +'a'-'A';                str+=ch;            }        }    }    sort(v.begin(), v.end());    printf("%s %d\n",v[0].c_str(),ans[v[0]]);    return 0;}


0 0
原创粉丝点击