#include<stdio.h>
#include <stdlib.h>
struct Student{
int id;
char name[1000];
int score;
};
void main()
{
typedef struct Student Stu;
int n,i,j;
scanf("%d",&n);
Stu a[n];
for(i=0;i<n;i++){
Stu* s = (Stu*)malloc(sizeof(Stu));
scanf("%d",&s->id);
scanf("%s",s->name);
scanf("%d",&s->score);
a[i] = *s;
free(s);
}
//冒泡排序
for(i=1;i<=n-1;i++){
for(j=0;j<=n-2;j++){
if(a[j].score < a[j+1].score){
Stu temp;
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}else if(a[j].score == a[j+1].score){
if(a[j].id>a[j+1].id){
Stu temp;
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
}
for(i=0;i<n;i++){
printf("%d %s %d\n",a[i].id,a[i].name,a[i].score);
}
}
/**************************************************************
Problem: 1414
User: admin
Language: C
Result: Accepted
Time:15 ms
Memory:1144 kb
****************************************************************/