其他分享
首页 > 其他分享> > 【ybtoj 字符串进阶】A. 1.生日排序

【ybtoj 字符串进阶】A. 1.生日排序

作者:互联网

A. 1.生日排序

ybtoj 字符串进阶 A. 1.生日排序


题面

在这里插入图片描述
在这里插入图片描述


解题思路

就……排序就好了


Code

#include <bits/stdc++.h>

using namespace std;

struct DT{
	string s;
	int y, m, d;
}a[110];
int n;

bool cmp(const DT&k, const DT&l) {
	if(k.y == l.y) {
		if(k.m == l.m) {
			if(k.d == l.d) return k.s > l.s;
				else return k.d < l.d;
		} else return k.m < l.m;
	} else return k.y < l.y;
}

int main() {
	scanf("%d", &n);
	for(int i = 1; i <= n; i ++) {
		cin >> a[i].s;
		scanf("%d %d %d", &a[i].y, &a[i].m, &a[i].d);
	}
	sort(a + 1, a + 1 + n, cmp);
	for(int i = 1; i <= n; i ++)
		cout << a[i].s << endl;
} 

标签:return,进阶,int,ybtoj,else,DT,排序,生日
来源: https://blog.csdn.net/qq_39940018/article/details/122013836