sort函数用于结构体二级排序时一定要注意cmp的比较顺序否则会出错,建议复杂排序时不要用STL模板库里的sort,很容易出错(别问我怎么知道的o(╥﹏╥)o),也有可能是我水平太低!
using namespace std;
#include<bits/stdc++.h>
int main(){
int n,i,j,p;
int a[1001],b[1001],arr[1001]={0};
cin>>n;
for(i=0;i<n;i++){
cin>>p;
arr[p]++;
}
int cnt=0;
for(i=0;i<1001;i++){
if(arr[i]!=0){
a[cnt]=i;
b[cnt]=arr[i];
cnt++;
}
}
for(i=0;i<cnt-1;i++){
for(j=i+1;j<cnt;j++){
if(b[j]>b[i]){
swap(b[j],b[i]);
swap(a[j],a[i]);
}
else if(b[j] == b[i] && a[j]<a[i]){
swap(b[j],b[i]);
swap(a[j],a[i]);
}
}
}
for(i=0;i<cnt;i++){
if(i != cnt-1) printf("%d %d\n",a[i],b[i]);
else printf("%d %d",a[i],b[i]);
}
return 0;
}