80分,求助
  • 板块P1104 生日
  • 楼主hcy0919
  • 当前回复3
  • 已保存回复3
  • 发布时间2025/1/10 20:43
  • 上次更新2025/1/11 05:12:44
查看原帖
80分,求助
1344746
hcy0919楼主2025/1/10 20:43

为了方便大佬们观看我还把注释标了上去。

#include <bits/stdc++.h>
using namespace std;
int n;
struct sr{
	string s;
	int y, m, d;
}p[105];
bool cmp(sr x1, sr x2){
	if (x1.y != x2.y){//年 
		return x1.y<x2.y;//年份更小的排前面 
	}
	else{
		if (x1.m != x2.m){//月 
			return x1.m<x2.m;//月份更小的排前面 
		}
		else{
			if (x1.d != x2.d){//日 
				return x1.d<x2.d;//日更小的排前面 
			}
		}
	}
}
int main(){
	cin>>n;
	for (int i=1; i<=n; i++){
		cin>>p[i].s;//输入名字 
		cin>>p[i].y>>p[i].m>>p[i].d;//输入生日 
	}
	sort(p+1, p+n+1, cmp);//排序 
	for (int i=1; i<=n; i++){
		cout<<p[i].s<<endl;//输出名字 
	}
	return 0;
}
2025/1/10 20:43
加载中...