#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
using namespace std;
struct Student
{
int id;
string name;
int year;
int month;
int day;
};
bool cmp(const Student&a,const Student&b)//自定义排序函数
{
if(a.year!=b.year)
{
return a.year<b.year;
}
else if(a.month!=b.month)
{
return a.month<b.month;
}
else if(a.day!=b.day)
{
return a.day<b.day;
}
else
{
return a.id>b.id;
}
}
int main ()
{
int n,i;
cin >> n;
vector <Student> Student(n);
for(i=0;i<n;i++)
{
Student[i].id=i;
cin >> Student[i].name ;
cin >> Student[i].year >> Student[i].month >>Student[i].day;
}
// for(i=0;i<n;i++)
// {
// cout << Student[i].name<<endl;
// }
sort(Student.begin(),Student.end(),cmp);//sort对结构体进行排序
for(i=0;i<n;i++)
{
cout << Student[i].name<<endl;
}
}
08-24
964
