
分数 10
全屏浏览题目
切换布局
作者 陈越
单位 浙江大学
给定N个正整数,请统计奇数和偶数各有多少个?
输入格式:
输入第一行给出一个正整N(≤1000);第2行给出N个非负整数,以空格分隔。
输出格式:
在一行中先后输出奇数的个数、偶数的个数。中间以1个空格分隔。
输入样例:
9
88 74 101 26 15 0 34 22 77
输出样例:
3 6
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
我的答案:
这个题目的要求比较简单。我们只需要遍历这些数字并检查每个数字是否是偶数或奇数。遍历时,我们可以使用两个计数器:一个用于计算奇数的数量,另一个用于计算偶数的数量。
解题思路:
- 初始化两个计数器:odd_count和even_count,分别用于计数奇数和偶数。
- 遍历每个数字。对于每个数字,检查它是否是偶数。如果数字除以2的余数为0,那么它是偶数;否则,它是奇数。
- 如果数字是偶数,增加 even_count;否则,增加odd_count。
- 输出 odd_count和even_count。
C语言:
#include <stdio.h>
int main() {
    int N;
    scanf("%d", &N);
    int even_count = 0, odd_count = 0;
    for(int i = 0; i < N; i++) {
        int num;
        scanf("%d", &num);
        if(num % 2 == 0) {
            even_count++;
        } else {
            odd_count++;
        }
    }
    printf("%d %d\n", odd_count, even_count);
    return 0;
}
C++:
#include <iostream>
using namespace std;
int main() {
    int N;
    cin >> N;
    int even_count = 0, odd_count = 0;
    for(int i = 0; i < N; i++) {
        int num;
        cin >> num;
        if(num % 2 == 0) {
            even_count++;
        } else {
            odd_count++;
        }
    }
    cout << odd_count << " " << even_count << endl;
    return 0;
}
分析过程:
本题的解题方法是直接的,利用了整数的性质来判断奇偶。通过模运算(取余数运算)来判断数字是奇数还是偶数。模2运算结果为0表示数字是偶数,为1表示数字是奇数。这是一个简单的方法来解决这个问题,不需要额外的数据结构或复杂的算法。
总结:
这道题没什么好总结的




















