#include<iostream>
#include<iomanip>
using namespace std;
typedef struct LNode{
double score1,score2,score3;
string name;
double average;
int num;
int list;
LNode* next;
}LNode,*Linklist;
Linklist CreatList(Linklist &L,int StuNum){
L = new LNode;
LNode* p,*r = L;
for(int i = 0;i<StuNum;i++){
p = new LNode;
p->next = NULL;
cin>>p->num>>p->name>>p->score1>>p->score2>>p->score3;
int average = (p->score1+p->score2+p->score3)/3;
p->average = average;
r->next = p;
r = r->next;
}
return L;
}
Linklist SortList(Linklist &L,int StuNum){
LNode*r,*p,*temp=L;
for(int i = 0;i<StuNum;i++){
r = L->next;
p = r->next;
temp = L;
for(int i = 0;i<StuNum-1;i++){
if(r->average>p->average){
r = p;
p->next = p;
temp = temp->next;
}
else{
r->next = p->next;
temp->next = p;
p->next = r;
p = r->next;
temp = temp->next;
}
}
}
r = L->next;
for(int i = 1;i<StuNum+1;i++){
r->list = i;
r = r->next;
if(r==NULL)
break;
}
return L;
}
void printList(Linklist &L,int StuNum){
LNode*r = L;
for(int i = 0;i<StuNum;i++){
r = r->next;
cout<<setprecision(2)<<std::fixed<<r->num<<" "<<r->name<<" "<<r->score1<<" "<<r->score2<<" "<<r->score3<<" "<<r->average<<" "<<r->list<<endl;
}
}
int main(){
int StuNum;
cin>>StuNum;
Linklist L;
CreatList(L,StuNum);
SortList(L,StuNum);
printList(L,StuNum);
return 0;
}