#include <iostream>
#include <algorithm>
#include <cstring>
#include <string>
using namespace std;
struct Res{
	char c[20];
	int p;
	int num;
}p[101];
int n;
struct Res t;

int main()
{
	cin >> n;
	for(int i=1;i<=n;i++)
	{
		p[i].num = i;
		cin >> p[i].c >> p[i].p ;
	}
	for(int i=1;i<=n;i++)
		for(int j=1;j<n;j++)
		{
			if(strcmp(p[j].c,p[j+1].c)>0)
			{
				t=p[j];
				p[j]=p[j+1];
				p[j+1]=t;
			}
			if(strcmp(p[j].c,p[j+1].c)==0)
			{
				if(p[j].p<p[j+1].p)
				{
					t=p[j];
					p[j]=p[j+1];
					p[j+1]=t;
				}
			}
		}
	for(int i=1;i<=n;i++)
		cout << p[i].num << endl ;
	
		
	
	return 0;
} 