您的位置:首页 > 其它

hdu-1106-排序

2013-08-14 08:33 323 查看
#include<stdio.h>

#include<string.h>

#include<stdlib.h>

char a[1010];

int b[1010];

int cmp(const void *a,const void *b)

{

 return *(int *)a-*(int *)b;

}

int main()

{

 int n,i,j,t;

 while(scanf("%s",a)!=EOF)

 {

  memset(b,0,sizeof(b));

  n=strlen(a);

  t=j=0;

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

  {

   if(a[i]=='5')

   {   t=1;

    continue;

   }

   else

   {

    if(t==1) {j++;t=0;}

    b[j]=b[j]*10+(a[i]-48);

   }

  }

  qsort(b,j+1,sizeof(b[0]),cmp);

  if(a[0]=='5')

  {

for(i=1;i<j;i++)

   printf("%d ",b[i]);

  }

  else

  {

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

    printf("%d ",b[i]);

  }

  printf("%d\n",b[j]);

 }

 return 0;

}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: