fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. bool comp(pair<int, string> a, pair<int, string> b) {
  5. if(a.first != b.first)return a.first>b.first;
  6. return (a.second).compare(b.second)<0;
  7. }
  8.  
  9. int main() {
  10. string s;
  11. map<string, int> has;
  12. while(std::getline(cin,s)) {
  13. has[s]++;
  14. }
  15. vector<pair<int, string> > v;
  16. for(auto it=has.begin();it!=has.end();it++) {
  17. v.push_back({it->second, it->first});
  18. }
  19. sort(v.begin(), v.end(), comp);
  20. int cnt=1;
  21. for(pair<int, string> p: v) {
  22. cout<<cnt++<<". "<<p.second<<" ("<<p.first<<")\n";
  23. // cout<<p.second<<" ("<<p.first<<")\n";
  24. }
  25. return 0;
  26. }
Success #stdin #stdout 0.01s 5300KB
stdin
Mihir
Jigar
Mihir
Mihir
Ashwin
Heena
Jigar
stdout
1. Mihir (3)
2. Jigar (2)
3. Ashwin (1)
4. Heena (1)