题解 | #整数奇偶排序#

整数奇偶排序

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

比较函数区分为四种情况

  • 奇奇
  • 偶偶
  • 奇偶
  • 偶奇
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;

bool Compare(int x, int y){
    if( x%2 == 1 && y%2==1){
        return y<x;//都是奇数,从大到小
    }else if(x%2==0 && y%2 == 0){
        return x<y;//都是偶数,从小到大
    }else if(x%2 == 0 && y%2 == 1){
        return false;//前偶后奇,不符合要求
    }else{
        return true;//前奇后偶
    }
    /*最后两句判断可以合为一句
        return x%2 > y%2;
    */
}

int main(){
    
    int arr[10];
    while(cin >> arr[0]){
        for(int i =1 ;i <10 ; i++)
            cin >> arr[i];
        
        sort(arr , arr +10, Compare);
        for(int i = 0;i<10 ; i++)
            printf("%d ",arr[i]);
        printf("\n");
    }
    return 0;
}
全部评论

相关推荐

11-07 13:31
怀化学院 Java
勇敢牛牛不怕难:又疯一个
点赞 评论 收藏
分享
头像
11-07 01:12
重庆大学 Java
精致的小松鼠人狠话不多:签哪了哥
点赞 评论 收藏
分享
11-28 17:58
门头沟学院 Java
美团 JAVA开发 n×15.5
牛客786276759号:百度现在晋升很难的 而且云这块的业务没美团好 你看百度股价都跌成啥样了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务