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;
}