第一眼想用桶,桶炸了
第二眼用结构体玩一下,超时了
想着边排序,边用二分找,发现时间花的更多了,妥妥拆东墙补西墙。
#include<algorithm>
#include<iostream>
using namespace std;
struct number{
int bh=0,count = 0;
};
bool cmp(number a,number b){
return a.bh<b.bh;
}
int main(){
int n ,k=0,num;
int flag;
number a[200001];
cin>>n;
for(int i=0;i<n;i++){
cin>>num;
flag = 1;
for(int j=0;j<=k;j++){
if(num==a[j].bh){
a[j].count++;flag = 0;
break;
}
}if(flag){
a[k].bh=num;
a[k++].count=1;
}
}
sort(a,a+k,cmp);
for(int i =0;i<k;i++){
cout<<a[i].bh<<" "<<a[i].count<<endl;
}
}