#include<bits/stdc++.h>
using  namespace std;
	struct cj{
		int xh;
		string mz;
		float fs;
	}a[200];
int main()
{
	int n;
 
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i].xh>>a[i].mz>>a[i].fs;
	}
	for(int i=1;i<=n-1;i++)
	{
		for(int 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(int i=1;i<=n;i++)
	{
		cout<<a[i].xh<<" "<<a[i].mz<<" "<<a[i].fs<<endl;
	}
	return 0;
}
/**************************************************************
	Problem: 1414
	User: chenzhuo1
	Language: C++
	Result: Accepted
	Time:16 ms
	Memory:2088 kb
****************************************************************/