OneCoder Avatar
OneCodercoderli.com · 937 篇博文
三级

C++ 算法考级专栏

真题分析、矩阵探测、递归回溯与基础语法

🎨 视觉封面

【GESP】C++三级练习 luogu-B3661, [语言月赛202209] 排排队

📅 2024-11-18·✍️ OneCoder·计算中...·⏱️ 4 分钟
#GESP#C++#一维数组

三级知识点一维数组练习,除了应用了数组以外,其余逻辑比较简单,适合初学者。

luogu-B3661 [语言月赛202209] 排排队

题目要求

描述

在幼儿园中有 nn 个小朋友,每个小朋友都有一个学号。

老师的要求是:学号为奇数的小朋友站一排,学号为偶数的小朋友站一排。

提示:

奇数:个位数为 1,3,5,7,91, 3, 5, 7, 9 的数字,满足除以 22 的余数为 11

偶数:个位数为 0,2,4,6,80, 2, 4, 6, 8 的数字,满足除以 22 的余数为 00

输入

共两行,第一行一个数字 nn,表示有 nn 个小朋友。

第二行共 nn 个数字,其中第 ii 个数字 aia_i 表示第 ii 个小朋友的学号。

输出

共两行,第一行一些数字,表示学号为奇数的小朋友的学号,按照输入的顺序输出。即,如果一个数字输入的时候在前,那么输出的时候也应当在前。

第二行一些数字,表示学号为偶数的小朋友的学号,按照输入的顺序输出。

保证小朋友的学号既有奇数,又有偶数。

输入样例-1

5
1 2 3 4 5

输出样例-1

1 3 5
2 4

输入样例-2

5
5 2 3 1 4

输出样例-2

5 3 1
2 4


题目分析

  • 读取小朋友数量n的值
  • 读取n个小朋友的学号,存储到数组中
  • 遍历数组中的学号
  • 输出学号为奇数的小朋友的学号
  • 换行
  • 输出学号为偶数的小朋友的学号

示例代码

CPP
#include <iostream>
using namespace std;
int main() {
    int n;  // 读取数组长度
    cin >> n;
    int* input_array = new int[n];  // 动态分配数组空间
    for (int i = 0; i < n; i++) {
        cin >> input_array[i];  // 读取数组元素
    }
    // 打印奇数
    for (int i = 0; i < n; i++) {
        if (input_array[i] % 2 != 0) {
            cout << input_array[i] << " ";
        }
    }
    cout << endl;  // 换行,分隔奇数和偶数
    // 打印偶数
    for (int i = 0; i < n; i++) {
        if (input_array[i] % 2 == 0) {
            cout << input_array[i] << " ";
        }
    }
    return 0;
}

💡 OneCoder 资源指引

所有代码开源上传至 GitHub:yummy-code 仓库 · GESP 专题站:GESP WIKI

🤝 技术交流与答疑

欢迎加入:C++ GESP/CSP 考级答疑群(688906745)Java/Python交流群(982860385),点击可直接加群。

📚

猜你想读 · 相关文章推荐

OneCoder

OneCoder (lihongzheshuai)

一个中年人的自留地,记录学习 C++、GESP/NOI、Java、Python 与算法架构的心得体会。本站唯一网址:coderli.com

💬 读者留言与交流

0 条讨论
✨ 支持 Markdown 语法格式
还没有留言,快来成为第一个讨论者吧!