fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int n, c, a;
  4. vector<int> v;
  5. map<int, int> mp;
  6. map<int, int> mp2;
  7.  
  8. bool cmp(int a, int b){
  9. if(mp2[a] == mp2[b]) return mp[a] < mp[b];
  10. return mp2[a] > mp2[b];
  11. }
  12.  
  13. int main(){
  14. cin >> n >> c;
  15. for(int i = 0; i < n; i++){
  16. cin >> a;
  17. v.push_back(a);
  18. mp[a] = i;
  19. mp2[a]++;
  20. }
  21. sort(v.begin(), v.end(), cmp);
  22. for(int i = 0; i < n; i++){
  23. cout << v[i] << ' ';
  24. }
  25. }
Success #stdin #stdout 0.01s 5272KB
stdin
5 2
2 1 2 1 2
stdout
2 2 2 1 1