/*
//1442 선택 정렬
#include <stdio.h>
int a[10001];
int n, i, j, temp, min;
int main()
{
scanf("%d", &n);
for (i = 1; i <= n; i++)
scanf("%d", &a[i]);
for (i=1; i<n; i++)
{
min=i;
for (j=i+1; j<=n; j++)
{
if(a[min] > a[j])
{
min=j;
}
}
temp = a[i];
a[i] = a[min];
a[min] = temp;
}
for (i=1; i<=n; i++)
printf("%d\n", a[i]);
return 0;
}
*/
/*
//1443 삽입 정렬
#include <stdio.h>
int a[10001];
int n, i, j, temp, key;
int main()
{
scanf("%d", &n);
for (i = 1; i <= n; i++)
scanf("%d", &a[i]);
for (i=2; i<=n; i++)
{
key=a[i];
for(j=i-1; j>0 && a[j]>=key; j--)
{
a[j+1]=a[j];
}
a[j+1]=key;
}
for (i=1; i<=n; i++)
printf("%d\n", a[i]);
return 0;
}
*/
/*
//1420 3등 찾기
#include <stdio.h>
typedef struct
{
char name[15];
int score;
}student;
int main()
{
student arr[50];
int n,i,j;
student temp;
scanf("%d", &n);
for(i=1; i<=n; i++)
{
scanf("%s %d", arr[i].name, &arr[i].score);
}
for(i=1; i<n; i++)
{
for(j=1; j<=n-i; j++)
{
if(arr[j].score < arr[j+1].score)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
printf("%s", arr[3].name);
return 0;
}
*/
/*
//1805 입체기동장치 생산공장
#include <stdio.h>
typedef struct
{
int num, gas;
}a;
int main()
{
a arr[100];
int n,i,j;
a temp;
scanf("%d",&n);
for(i=1; i<=n; i++)
{
scanf("%d %d", &arr[i].num, &arr[i].gas);
}
for(i=1; i<n; i++)
{
for(j=1; j<=n-i; j++)
{
if(arr[j].num > arr[j+1].num)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(i=1; i<=n; i++)
{
printf("%d %d\n", arr[i].num, arr[i].gas);
}
return 0;
}
*/
/*
//3017 정렬 기준
#include <stdio.h>
typedef struct
{
int num,a,b;
} score;
int main()
{
score arr[1000];
int n,i,j;
score temp;
scanf("%d",&n);
for(i=1; i<=n; i++)
{
scanf("%d %d", &arr[i].a, &arr[i].b);
arr[i].num=i;
}
for(i=1; i<n; i++)
{
for(j=1; j<=n; j++)
{
if(arr[j].a < arr[j+1].a)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
else if(arr[j].a == arr[j+1].a)
{
if(arr[j].b < arr[j+1].b)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
for(i=1; i<=n; i++)
{
printf("%d %d %d\n", arr[i].num, arr[i].a, arr[i].b);
}
return 0;
}
*/
//3019 스케줄 정리
#include <stdio.h>
typedef struct
{
char name[100];
int year, month, day;
} schedule;
int main()
{
schedule arr[100];
int n,i,j;
schedule temp;
scanf("%d", &n);
for(i=1; i<=n; i++)
{
scanf("%s %d %d %d", arr[i].name, &arr[i].year, &arr[i].month, &arr[i].day);
}
for(i=1; i<n; i++)
{
for(j=1; j<=n-i; j++)
{
if(arr[j].year > arr[j+1].year)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
else if(arr[j].year == arr[j+1].year)
{
if(arr[j].month > arr[j+1].month)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
else if(arr[j].year == arr[j+1].year && arr[j].month == arr[j+1].month)
{
if(arr[j].day > arr[j+1].day)
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
for(i=1; i<=n; i++)
{
printf("%s\n", arr[i].name);
}
return 0;
}



