@[syzxyangyibo](/user/665632)
>如果有两个同学生日相同,输入**靠后**的同学先输出
```
#include<iostream>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
struct btd{
string name;
int year,day,month;
int id;
};
bool cmp(btd a,btd b){
return (a.year!=b.year)?a.year<b.year:(a.month!=b.month)?a.month<b.month:(a.day!=b.day)?a.day<b.day:a.id>b.id;//用三元运算符会非常方便
}
int main(){
int n;
cin>>n;
btd a[n];
for(int i=0;i<n;i++){
cin>>a[i].name>>a[i].year>>a[i].month>>a[i].day;
a[i].id=i;
}
sort(a,a+n,cmp);
for(int i=0;i<n;i++)cout<<a[i].name<<endl;
return 0;
}
```
by ajahjahah @ 2022-05-01 10:08:47
@[lao_ba](/user/357378) 谢谢!
by xia_vi @ 2022-05-01 13:35:56