#include <iostream>
#include <algorithm>
using namespace std;
struct Node {
    int num;
    int time;
    Node() {num = -
1; time = 
0;}
};
Node arr[1005];
bool cmp(Node a, Node b)
{
    return (a.time > b.time) || (a.time == b.time && a.num <
 b.num);
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n;
    cin >>
 n;
    for (
int i = 
1; i <= n; i++
) {
        int x;
        cin >>
 x;
        arr[x].num =
 x;
        arr[x].time++
;
    }
    sort(arr, arr + 
1004, cmp);
    for (
int i = 
0; i <= 
1005; i++
) {
        if (arr[i].num == -
1 || arr[i].time == 
0) 
break;
        cout << arr[i].num << 
' ' << arr[i].time <<
 endl;
    }
    
    return 0;
} 
  
  
 
转载于:https://www.cnblogs.com/AntonLiu/p/11165154.html