题目描述:
输入10 个整数,彼此以空格分隔,重新排序后输出(也按空格分隔),要求:
1、先输出其中的奇数,并按从大到小排序
2、然后输出其中的偶数,并按从小到大排序
输入:任意排序的10 个整数(0~100),彼此以空格分隔
输出:可能有多组测试数据,对于每组数据,按照要求排序后输出,由空格分隔
#include<iostream>
#include<algorithm>
using namespace std;
int a[10];
bool Compare(int x,int y){
if(x%2==1&&y%2==1){//x奇y奇从大到小排列
return y<x;
}else if(x%2==0&&y%2==0){//x偶y偶从小到大排列
return x<y;
}else if(x%2==1&&y%2==0){//x奇y偶,奇数放前面偶数放后面
return true;
}else{
return false;
}
}
int main(){
while(cin>>a[0]){
for(int i=1;i<10;i++){
cin>>a[i];
}
sort(a,a+10,Compare);
for(int i=0;i<10;i++){
cout<<a[i]<<" ";
}
cout<<endl;
}
return 0;
}