任艺宸 • 2个月前
#include<iostream> // cin\cout\endl
#include<cstdio> //scanf()\printf()
#include<cstring> // strcpy()\strcat()\strcmp()\strlen()\memset()
#include<cmath> //sqrt()\pow()\abs()\ceil()\floor()\max()\min()
using namespace std;
struct cj{
char m[21]={};
int x;
};
int main(){
cj a[21]={};
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i].m>>a[i].x;
}
for(int i=0;i<n-1;i++){
for(int j=0;j<n-i-1;j++){
if(a[j].x<a[j+1].x){
swap(a[j],a[j+1]);
}else if(a[j].x==a[j+1].x){
int t=strcmp(a[j].m,a[j+1].m);
if(t>0){
swap(a[j],a[j+1]);
}
}
}
}
for(int i=0;i<n;i++){
cout<<a[i].m<<" "<<a[i].x;
cout<<endl;
}
return 0;
}
评论: