Problem E 排序(难度4)

来源:互联网 发布:windows pages 编辑:程序博客网 时间:2024/05/16 10:38

Problem E: 排序(难度:4

Description

给你n(n > 1)个小写字母,按照字母升序排序后输出。

Input

第一行:n

第二行:n个小写字母。

Output

输出包括两行:

n为偶数,两行各有n个字母排序后 一半的字母。

n为奇数,第一行比第二行多一个字母。

Sample Input

5

e d c b a

Sample Output

a b c

d e

HINT

#include<stdio.h>

#include<string.h>

int main()

{

    int n,i,j;

    char a[100];

    scanf("%d",&n);

     

        for(i=0;i<n;i++)

        {

            getchar();

            scanf("%c",&a[i]);

        }

        for(i=0;i<n-1;i++)

        {

            for(j=0;j<n-1-i;j++)

            {

                if(a[j]>a[j+1])

                {

                    char t=a[j];

                    a[j]=a[j+1];

                    a[j+1]=t;

                }

            }

        }

        for(i=0;i<n;i++)

        {

            if(n%2==0)

            {

                if(i<n/2)

                {

                    if(i==(n-2)/2)

                    {

                        printf("%c\n",a[i]);

                    }

                    else if (i!=(n-2)/2)

                        printf("%c ",a[i]);

                }

                else

                {

                    if(i==n-1)

                        printf("%c",a[i]);

                    else

                        printf("%c ",a[i]);

                }

            }

            else

            {

                if(i<(n+1)/2)

                {

                    if(i==(n-1)/2)

                    {

                        printf("%c\n",a[i]);

                    }

                    else if(i!=(n-1)/2)

                        printf("%c ",a[i]);

                }

                else

                {

                    if(i==n-1)

                        printf("%c",a[i]);

                    else

                        printf("%c ",a[i]);

                }

            }

        }

     

    return 0;

}

 //注意下输出格式

原创粉丝点击