Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
319693 | 王栎州 | 【C5-9】合影效果 | C++ | 通过 | 100 | 1 MS | 260 KB | 1469 | 2025-04-29 17:48:46 |
#include <iostream> #include <algorithm> #include <iomanip> using namespace std; const int MAX_N = 40; // 根据题目限制设置最大人数 struct Person { string gender; double height; }; int main() { int n; cin >> n; Person people[MAX_N]; // 使用结构体数组存储所有人员 // 输入数据 for (int i = 0; i < n; ++i) { cin >> people[i].gender >> people[i].height; } // 分离男女 Person males[MAX_N], females[MAX_N]; int maleCount = 0, femaleCount = 0; for (int i = 0; i < n; ++i) { if (people[i].gender == "male") { males[maleCount++] = people[i]; } else { females[femaleCount++] = people[i]; } } // 排序男生(升序) sort(males, males + maleCount, [](const Person &a, const Person &b) { return a.height < b.height; }); // 排序女生(降序) sort(females, females + femaleCount, [](const Person &a, const Person &b) { return a.height > b.height; }); // 输出结果 cout << fixed << setprecision(2); for (int i = 0; i < maleCount; ++i) { cout << males[i].height << " "; } for (int i = 0; i < femaleCount; ++i) { cout << females[i].height; if (i != femaleCount - 1) { cout << " "; } } cout << endl; return 0; }