#include<stdio.h>
#include<math.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{
char s[10000];
while(scanf("%s",s)!=EOF)
{
int i=0,j=1,a[10000]={0},sum;
while(s[i]!='\0')
{
sum=0;
while(s[i]=='5')
{
i++;
}
if(s[i]!='\0')
{
sum=s[i]-'0';
i++;
}
else break;
while(s[i]!='5'&&s[i]!='\0')
{
sum=sum*10+s[i]-'0';
i++;
}
a[j]=sum;
j++;
}
sort(a,a+j);
for(i=1;i<j;i++)
{
if(i!=j-1)printf("%d ",a[i]);
else printf("%d\n",a[i]);
}
}
return 0;
}
本题通过对字符串中是否存在5来分为几个数字 后应用快排 来排序输出