题目名称:男女生排队 题目描述: 小明所在的班级要举办一场课外活动,在活动开始之前老师告诉小明:“需要把男女生分成两队,并且每一队都要按照身高从矮到高进行排序”。但是由于小明的马虎,没有把老师的安排转达给同学,导致全班同学已经排成了一列。活动马上要开始了,小明的老师对此很困扰,你能帮帮她吗? 输入格式: 输入数据共3行。 第一行包含一个整数n,代表班级的总人数,其中(0<n<10^4); 第二行包含n个整数,用空格隔开,代表已经排成的一列中每一位同学的性别。每一个整数只会是0或1(0表示女生,1
时间: 2024-04-02 18:37:54 浏览: 21
以下是 C++ 代码实现:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> genders(n);
for (int i = 0; i < n; i++) {
cin >> genders[i];
}
vector<int> males, females;
for (int gender : genders) {
if (gender == 0) {
females.push_back(gender);
} else {
males.push_back(gender);
}
}
sort(males.begin(), males.end());
sort(females.begin(), females.end());
for (int female : females) {
cout << female << " ";
}
for (int male : males) {
cout << male << " ";
}
cout << endl;
return 0;
}
```
思路:
首先读入已经排好序的同学性别序列,然后遍历序列,将男生和女生分别存入两个新的 vector 中。接着对这两个 vector 分别进行排序,最后输出排序后的女生序列和男生序列。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)