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

A. 1.生日排序

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


题面

【ybtoj 字符串进阶】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;
} 
上一篇:微积分(A)每日一题[38]


下一篇:PAT (Basic Level) Practice 1038 统计同成绩学生 (20 分)