九度OJ题目1117整数奇偶排序解题报告

来源:互联网 发布:tv域名能备案吗 编辑:程序博客网 时间:2024/05/21 17:02
题目1117:整数奇偶排序

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:3886

解决:1132

题目描述:

输入10个整数,彼此以空格分隔。重新排序以后输出(也按空格分隔),要求:
1.先输出其中的奇数,并按从大到小排列;
2.然后输出其中的偶数,并按从小到大排列。

输入:

任意排序的10个整数(0~100),彼此以空格分隔。

输出:

可能有多组测试数据,对于每组数据,按照要求排序后输出,由空格分隔。

样例输入:
4 7 3 13 11 12 0 47 34 98
样例输出:
47 13 11 7 3 0 4 12 34 98
提示:

1. 测试数据可能有很多组,请使用while(cin>>a[0]>>a[1]>>...>>a[9])类似的做法来实现;
2. 输入数据随机,有可能相等。

解决过程:这道题不难,但是需要注意一些特殊情况,比如:

1、偶数个数为0,则最后一个奇数后面不能有空格;

2、奇数个数为0,则全部为偶数

3、只有一个偶数的情况

源代码:


#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <iostream>
usingnamespacestd;
 
voidoucmp(intarr[],intlen){
inti=0,j,flag=0;
inttemp;
for(i=0;i<len-1;i++){
 
   for(j=0;j<len-i-1;j++){
  if(arr[j]>arr[j+1]){
                    temp=arr[j+1];
                    arr[j+1]=arr[j];
                    arr[j]=temp;
                }
}
 
}
}
voidjicmp(intarr[],intlen){
inti=0,j,flag=0;
inttemp;
for(i=0;i<len-1;i++){
 
   for(j=0;j<len-i-1;j++){
  if(arr[j]<arr[j+1]){
                    temp=arr[j+1];
                    arr[j+1]=arr[j];
                    arr[j]=temp;
                }
}
 
}
}
 
 
intmain(){
inti,ji,ou;
inta,sum=0;
intnum[10]={0},jinum[10]={0},ounum[10]={0};
 
 ji=0,ou=0;
//freopen("1117.txt","r",stdin);
  while(cin>>num[0]>>num[1]>>num[2]>>num[3]>>num[4]>>num[5]>>num[6]>>num[7]>>num[8]>>num[9]){
 ji=0,ou=0;
 
for(i=0;i<10;i++){
   if(num[i]%2==0)
   ounum[ou++]=num[i];
   else
   jinum[ji++]=num[i];
}
 
jicmp(jinum,ji);
oucmp(ounum,ou);
 
if(ou>0){
for(i=0;i<ji;i++)
   printf("%d ",jinum[i]);
}elseif(ou==0){
for(i=0;i<ji-1;i++)
   printf("%d ",jinum[i]);
    printf("%d\n",jinum[ji-1]);
}
if(ou>1){
for(i=0;i<ou-1;i++)
printf("%d ",ounum[i]);
printf("%d\n",ounum[ou-1]);
  }elseif(ou==1){
  printf("%d\n",ounum[ou-1]);
  }
  }
return0;
}
 
/**************************************************************
    Problem: 1117
    User: kaoyandaren123
    Language: C++
    Result: Accepted
    Time:150 ms
    Memory:1520 kb
****************************************************************/


1 0
原创粉丝点击