1 条题解

  • 0
    @ 2026-10-18 17:43:51

    G1016 [GESP202412 一级] 奇数和偶数 题解

    难度:1(GeekPi教学评定);知识点:循环计数、奇偶性、取模运算。

    解题思路

    用两个计数器分别记录奇数、偶数。每读入x,用x%2是否为0判断,最后先输出奇数个数,再输出偶数个数。

    为什么正确

    每个整数恰属于奇偶两类之一,每次只给所属类别加1,最终计数完整且互不重复。

    易错点

    0属于偶数;输出顺序是奇数在前、偶数在后。

    复杂度

    时间:O(n);额外空间:O(1)。

    参考代码(C++17)

    #include<bits/stdc++.h>
    
    using namespace std;
    int main() {
        ios::sync_with_stdio(false);
        cin.tie(nullptr);
        int n,x,o=0,e=0;
        cin>>n;
        while(n--) {
            cin>>x;
            (x%2?o:e)++;
        }
        cout<<o<<" "<<e;
    }
    

    来源与说明

    本题解为配套教学整理,非官方题解。题库使用自行生成的测试数据,5个测试点。

    • 1

    信息

    ID
    624
    时间
    1000ms
    内存
    512MiB
    难度
    进阶
    标签
    递交数
    2
    已通过
    1
    上传者