80分,结构体新手,求助

P1104 生日

题目中说到:\ **如果有两个同学生日相同,输入靠后的同学先输出**\ 而你的代码中没有注意到。\ 大概帮你改了一下: ```cpp #include <bits/stdc++.h>//年=y,月=m,日=d using namespace std; struct f{ string s; int y,m,d,id; }a[105]; int n; int cmp(f xx,f yy){ if(xx.y==yy.y){ if(xx.m==yy.m){ if(xx.d==yy.d) return xx.id>yy.id; return xx.d<yy.d; } return xx.m<yy.m; } else{ return xx.y<yy.y; } } int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>a[i].s>>a[i].y>>a[i].m>>a[i].d; a[i].id=i; } sort(a+1,a+1+n,cmp); for(int i=1;i<=n;i++){ cout<<a[i].s<<endl; } return 0; } ```
by liqiu_ @ 2023-03-22 20:40:35


@[aiueo](/user/662796) 谢谢,没看到
by wang0728 @ 2023-03-28 19:44:44


|