哈希+排序

字符统计

http://www.nowcoder.com/questionTerminal/c1f9561de1e240099bdb904765da9ad0

include<bits/stdc++.h>

using namespace std;
string countChar(string &str){
unordered_map<char, int> hash;
string ret;
for(auto &ch : str){
hash[ch]++;
}
vector<pair<char, int>> vec;
for(auto &[ch, count] : hash){
vec.push_back({ch, count});
}

sort(vec.begin(), vec.end(), [](auto &a, auto &b){
    return a.second > b.second || (a.second == b.second && a.first < b.first);
});
for(auto &[ch, count] : vec){
    ret += ch;
}
return ret;

}

int main(){
string str;
while(getline(cin, str)){
cout << countChar(str) << endl;
}
return 0;
}

全部评论

相关推荐

很奥的前端仔:如果你接了offer 临时又说不去 hr确实要多做一些工作。 当然如果是接offer之前当我没说
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务