游客 Signup | Login
中文 | En

1633 - 整数奇偶排序


输入10个整数,彼此以空格分隔。重新排序以后输出(也按空格分隔),要求:<br />

1.先输出其中的奇数,并按从大到小排列;
2.然后输出其中的偶数,并按从小到大排列。

<br />

Input


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

<br />

Output


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

<br />

Examples

Input

0 56 19 81 59 48 35 90 83 75 
17 86 71 51 30 1 9 36 14 16 

Output

83 81 75 59 35 19 0 48 56 90
71 51 17 9 1 14 16 30 36 86

Hint

多组数据,注意输出格式

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

  1. 输入数据随机,有可能相等。

Solution C

#include<stdio.h>
int main()
{
	int a[11];
	int i,j,m,t,h;
	while(scanf("%d",&m)!=EOF)
	{
		h=0;
		for(i=0;i<9;i++)
			scanf("%d",&a[i]);
		a[9]=m;
		for(j=0;j<9;j++)
		{
			for(i=0;i<9-j;i++)
			{
				if(a[i]>a[i+1])
				{
					t=a[i];
					a[i]=a[i+1];
					a[i+1]=t;
				}
			}
		}
		for(i=9;i>=0;i--)
		{
			if(a[i]%2!=0)
			{
			 	printf("%d ",a[i]);
			    h++;
			}
		}
		for(i=0;i<10;i++)
		{
			if(a[i]%2==0)
			{
				h++;
				if(h<=9)
				    printf("%d ",a[i]);
				else
					printf("%d",a[i]);
			}
		}
		printf("\n");
	}
	return 0;
}


Solution C++

#include<stdio.h>
#define N 10
int main()
{    
	int a[N]={0},flag[N]={0};    
	int i,j,t=0,temp=0,g=1;    
	int f;
	while(1)
	{
		f=0;
		for(i=0;i<N;i++)    
		{        
			a[i]=-1;
			flag[i]=0;
			scanf("%d",&a[i]);        
			if(a[i]==-1)
				return 0;
			if(a[i]%2==0)            
				flag[i]=1;        
			else            
				flag[i]=0;    
		}    
		for(i=0;i<N-1;i++)    
		{        
			for(j=0;j<N-i-1;j++)            
			if(a[j]>a[j+1])            
			{                
				temp=a[j];                
				a[j]=a[j+1];                
				a[j+1]=temp;                
				t=flag[j];                
				flag[j]=flag[j+1];                
				flag[j+1]=t;            
			}    
		}    
		for(i=N-1;i>=0;i--)        
			if(flag[i]==0)
			{
				if(f==1)
					printf(" %d",a[i]);
				else
					printf("%d",a[i]);    
				f=1;
 
			}            			
		for(i=0;i<N;i++)        
			if(flag[i]==1)            
				printf(" %d",a[i]);
		printf("\n");
	}
}

Hint

多组数据,注意输出格式

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

  1. 输入数据随机,有可能相等。
Time Limit 1 second
Memory Limit 32 MB
Discuss Stats
上一题 下一题