Luogu P1104 生日
生日
题目描述
cjf 君想调查学校 OI 组每个同学的生日,并按照年龄从大到小的顺序排序。但 cjf 君最近作业很多,没有时间,所以请你帮她排序。
输入格式
输入共有
第
第
输出格式
输出共有
即
样例 #1
样例输入 #1
3 Yangchu 1992 4 23 Qiujingya 1993 10 13 Luowen 1991 8 1
样例输出 #1
Luowen Yangchu Qiujingya
提示
数据保证,
这道题是黄题?
这道题涉及到结构体排序,应使用cmp函数实现。
特别注意“(如果有两个同学生日相同,输入靠后的同学先输出)”。
#include<bits/stdc++.h> using namespace std; struct mate{ string n; int y,m,d,i; }a[102]; bool cmp(mate a,mate b) { if(a.y!=b.y) return a.y<b.y; if(a.m!=b.m) return a.m<b.m; if(a.d!=b.d) return a.d<b.d; return a.i>b.i; } int main() { ios::sync_with_stdio(false); int n; cin>>n; for(int i=0;i<n;i++) { cin>>a[i].n>>a[i].y>>a[i].m>>a[i].d; a[i].i=i; } sort(a,a+n,cmp); for(int i=0;i<n;i++) { cout<<a[i].n<<endl; } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理