分享

1106

 竹林馆0 2011-08-07
#include<stdio.h>
#include<iostream>
#include<cmath>
#include<cstdio>
#include<string>
#include<string.h>
#include<math.h>
#include<stdlib.h>
int leap(const void *a,const void *b)
{
    return *(int *)a-*(int *)b;
}
int main()
{
  char str[1005];
  int a[1005];
  while(gets(str))
  {   memset(a,0,sizeof(a));
    int i,t,j,s=0,k=0,temp;
    t= strlen(str);
    for(i=0; str[i]=='5'; i++)
           s=i;
    for( ; i<t; i++)
    {   
       if(str[i]=='5')
       {
         for(j=s; j<i; j++)
         {
          a[k]+=(int(str[j])-'0')*int(pow((float)10,(float)i-j-1));   、、最后一个数会错???     
         }
          k++;
          while(str[i+1]=='5')
          i++;
          s=i+1;            
       }
       else if(i==t-1)
       {
          for(j=s; j<=i; j++)
          {
          a[k]+=(int(str[j]-'0'))*(int)pow((float)10,(float)i-j); 
          }
          k++;
          s=i+1;    
       }
    }
    qsort(a,k-1,sizeof(a[0]),leap);//不知道为什么qsort 没有排序、、纠结、、
    for(i=0; i<k; i++)
    printf((i==k-1)?"%d\n":"%d ",a[i]);
}
return 0;
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多