| Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 87030 | sh25_zhoumy | 病人排队 | C++ | 通过 | 0 MS | 260 KB | 739 | 2026-04-10 15:15:20 |
#include <iostream> #include <algorithm> #include <string> using namespace std; struct Patient { string id; int age; int order; }; bool cmp(Patient a, Patient b) { if (a.age >= 60 && b.age < 60) return true; if (a.age < 60 && b.age >= 60) return false; if (a.age >= 60 && b.age >= 60) { if (a.age != b.age) return a.age > b.age; return a.order < b.order; } return a.order < b.order; } int main() { int n; cin >> n; Patient p[105]; for (int i = 0; i < n; i++) { cin >> p[i].id >> p[i].age; p[i].order = i; } sort(p, p + n, cmp); for (int i = 0; i < n; i++) { cout << p[i].id << endl; } return 0; }