题解 | #整数奇偶排序#

整数奇偶排序

http://www.nowcoder.com/practice/bbbbf26601b6402c9abfa88de5833163

sort()排序方法

#include <iostream>
#include <cstdio>
#include <algorithm>

using namespace std;

int arr[10];

bool cmp(int x, int y) {
    /*三种情况:
    1.同为奇数,返回大的
    2.同为偶数,返回小的
    3.奇偶相异,返回奇数
    */ 

    if (x%2==1 && y%2==1)
        return x > y;
    else if (x%2==0 && y%2==0)
        return x < y;
    else if (x%2==1 && y%2==0)
        return true;
    else
        return false;
}

int main() {
    while (scanf("%d" ,&arr[0]) != EOF) {
        for (int i=1; i<10; ++i) {
            scanf("%d", &arr[i]);
        }
        sort ( arr, arr+10, cmp);
        for (int i=0; i<10; i++)
            printf("%d ", arr[i]);
        printf("\n");
    }

    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
10-05 10:13
已编辑
HHHHaos:让这些老登来现在秋招一下,简历都过不去
点赞 评论 收藏
分享
想润的芹菜人狠话不多:把其中一个老总放中间都会得罪另一个
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务