【九度OJ】题目1169:比较奇偶数个数 解题报告

来源:互联网 发布:域名卖到国外 编辑:程序博客网 时间:2024/05/16 00:46

【九度OJ】题目1169:比较奇偶数个数 解题报告

标签(空格分隔): 九度OJ


http://ac.jobdu.com/problem.php?pid=1169

题目描述:

第一行输入一个数,为n,第二行输入n个数,这n个数中,如果偶数比奇数多,输出NO,否则输出YES。

输入:

输入有多组数据。
每组输入n,然后输入n个整数(1<=n<=1000)。

输出:

如果偶数比奇数多,输出NO,否则输出YES。

样例输入:

51 5 2 4 3

样例输出:

YES

Ways

很简单的题,只要统计奇数和偶数的个数即可。

用了一个技巧,判断一个数是否是奇数可以直接:(nums[i] & 1) != 0,位运算速度很快。

另外,memset函数要导入库#include <cstring>

#include<stdio.h>#include <cstring>int main() {    int n;    while (scanf("%d", &n) != EOF) {        int count[2];//0放偶,1放奇        memset(count, 0, sizeof(count));        int nums[1000];        for (int i = 0; i < n; i++) {            scanf("%d", &nums[i]);        }        for (int i = 0; i < n; i++) {            if ((nums[i] & 1) != 0) {//奇数                count[1]++;            } else {                count[0]++;            }        }        if (count[0] > count[1]) {            printf("NO\n");        } else {            printf("YES\n");        }    }    return 0;}

Date

2017 年 3 月 17 日

0 0
原创粉丝点击