点击前往试题目录:https://blog.csdn.net/best335/article/details/99550556
#include<iostream>
#include<cstring>
#include<vector>
#include<algorithm>
using namespace std;
struct P{
int a,t;
P(const int&a,const int&t):a(a),t(t){}
};
static bool cmp(const P&p1,const P&p2){return p1.t==p2.t?p1.a<p2.a:p1.t>p2.t;}
int main(){
int n,A[1001];
memset(A,0,sizeof(A));
vector<P> p;
cin>>n;
for(int i=0,a;i<n;++i) cin>>a,++A[a];
for(int i=0;i<1001;++i) if(A[i]>0) p.push_back(P(i,A[i]));
sort(p.begin(),p.end(),cmp);
for(int i=0,ni=p.size();i<ni;++i)
cout<<p[i].a<<" "<<p[i].t<<endl;
return 0;
}