思路比较繁琐,没仔细思考 仅仅实现了功能 #include <iostream> #include <vector> #include <map> #include <set> #include <algorithm> using namespace std; bool cmp(pair<int, int> a, pair<int, int> b) {     return a.second > b.second; } int main() {     vector<int> v {1,1,1,1,3,3,3,4,5,2,6,6,6,6,6};     map<int, int> m;     for(int i = 0; i < v.size(); ++i)     {         if(m.find(v[i]) == m.end())         {             m.insert(make_pair(v[i], 1));         }         else         {             ++m[v[i]];         }     }     vector<pair<int, int>> res;     set<int> s;     for(int i = 0; i < v.size(); ++i)     {         if(s.find(v[i]) == s.end())         {             res.push_back(make_pair(v[i], m[v[i]]));             s.insert(v[i]);         }     }     stable_sort(res.begin(), res.end(), cmp);     for(int i = 0; i < res.size(); ++i)     {         for(int j = 0; j < res[i].second; ++j)         {             if(i == res.size() - 1 && j == res[i].second - 1)             {                 cout << res[i].first << endl;             }             else             {                 cout << res[i].first << " ";             }         }     } }
点赞 评论

相关推荐

dongsheng66:如果想进大厂的话,在校经历没必要占这么大篇幅,可以把专业技能单独放一个专栏写,可以加个项目经历
点赞 评论 收藏
分享
牛客网
牛客企业服务