#include<bits/stdc++.h>
using namespace std;
int n,i,j;
struct sj{
    int xh;
    string mz;
    float fs;
}a[200];
int main(){
    cin>>n;
    for(i=1;i<=n;i++){
        cin>>a[i].xh>>a[i].mz>>a[i].fs;
}
    for(i=1;i<=n-1;i++){
        for(j=1;j<=n-i;j++){
            if(a[j].fs<a[j+1].fs||(a[j].fs==a[j+1].fs&&a[j].xh>a[j+1].xh)){
                swap(a[j],a[j+1]);
            }
        }
    }
    for(i=1;i<=n;i++){
        cout<<a[i].xh<<" "<<a[i].mz<<" "<<a[i].fs<<endl; 
    }
    return 0;
}
/**************************************************************
	Problem: 1414
	User: wengsihan
	Language: C++
	Result: Accepted
	Time:15 ms
	Memory:2092 kb
****************************************************************/