前言
你好啊,我是努力奔跑的追梦人~我始终相信着未来,一分耕耘一分收获。
提示:以下是本篇文章正文内容,所有题解均使用 C/C++ 编程语言。
#include <bits/stdc++.h>
using namespace std;
const int MAXN=1000;
struct node{
int key, count;
bool operator < (const node &rhs) const{
if (count == rhs.count) return key < rhs.key;
return count > rhs.count;
}
}Num[MAXN];
int main(){
// freopen("1.txt", "r", stdin);
int n;
cin >> n;
int a;
int len = 0;//去重后的元素个数
for (int i=0; i<n; i++){
cin >> a;
if (Num[a].count == 0){
Num[a].key = a;
len++;
}
Num[a].count++;
}
//降序排列
sort(Num, Num+MAXN);
//输出
for (int i=0; i<len; i++){
cout << Num[i].key << " " << Num[i].count << endl;
}
return 0;
}