#include #include #include #include

using namespace std;

struct Person { string gender; float height; };

bool compareHeight(const Person& p1, const Person& p2) { if (p1.gender == "male" && p2.gender == "female") { return true; } else if (p1.gender == "female" && p2.gender == "male") { return false; } else { if (p1.gender == "male") { return p1.height < p2.height; } else { return p1.height > p2.height; } } }

int main() { int n; cin >> n;

vector<Person> people(n);
for (int i = 0; i < n; i++) {
    cin >> people[i].gender >> people[i].height;
}

sort(people.begin(), people.end(), compareHeight);

for (int i = 0; i < n; i++) {
    cout << fixed << setprecision(2) << people[i].height << " ";
}

return 0;

}

描述小云和朋友们去爬香山为美丽的景色所陶醉想合影留念。如果他们站成一排男生全部在左从拍照者的角度并按照从矮到高的顺序从左到右排女生全部在右并按照从高到矮的顺序从左到右排请问他们合影的效果是什么样的所有人的身高都不同?输入描述第一行是人数n2 ≤ n ≤ 40且至少有1个男生和1个女生。后面紧跟n行每行输入一个人的性别男male或女female和身高浮点数单位米两个数据之间以空格分隔。输出描述n个浮

原文地址: https://www.cveoy.top/t/topic/jafH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录