1 条题解

  • 0
    @ 2025-4-7 21:19:29

    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;
    }
    
    
    

    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");
    	}
    }
    

    Python :

    while True:
        lst = raw_input().split()
        lst_even = []
        lst_odd = []
        for num in lst:
            if int(num)%2==0:lst_even.append(int(num))
            elif int(num)%2!=0:lst_odd.append(int(num))
        lst_even.sort()
        new_odd = sorted(lst_odd)
        new_odd.reverse()
        for i in new_odd:
            print i,
        for j in lst_even[0:-1]:
            print j,
        print lst_even[-1]
        
    
    
    • 1

    信息

    ID
    1174
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者