哈哈,沙发~~~
2026-04-15 12:23:30
发布于:北京
4阅读
0回复
0点赞
别的不说,先放代码
~~~~~~~~~~~~~~~~~~~华丽的分割线~~~~~~~~~~~~~~~~~~~~~~~~
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
class Stu
{
public:
string name;
int y,m,d,id;
void read(int i) {
cin >> name >> y >> m >> d;
id = i;
}
private:
int _114514; // 真·private
};
bool cmp(Stu a,Stu b) {
if(a.y != b.y) return a.y < b.y;
if(a.m != b.m) return a.m < b.y;
if(a.d != b.d) return a.d < b.d;
return a.id > b.id;
}
int main() {
int n;
cin >> n;
Stu a[n];
for(int i = 0;i < n;i++) {
a[i].read(i);
}
sort(a,a + n,cmp);
for(int i = 0;i < n;i++) {
cout << a[i].name << endl;
}
return 0;
}
~~~~~~~~~~~~~~~~~~~华丽的分割线~~~~~~~~~~~~~~~~~~~~~~~~
这个题呢,没有啥难度,用好sort和struct···不对,题目让用struct,咱们就不能用,要用class就行了
使用成员函数可以减少编码量
这里空空如也







有帮助,赞一个