思路:
运用c++所带strtok函数截取字符串;
转化为int再重新排序即可;
原型:char *strtok(char *s,const char *delim)
strtok()用来将字符串分割成一个个片段,参数s指向将要被分隔的字符串,参数delim则为分隔字符串,当strtok()在参数s的字符串中发现到参数delim的分隔字符是,则会将该字符改为 ‘\0’ 字符,在第一次调用时,strtok()必须给与参数s字符串,往后的调用则将参数s设置成NULL。每次调用成功则返回被分隔片段指针。
#include<bits/stdc++.h>
#include<time.h>
#include<cctype>
#include<iostream>
#include<ostream>
#include<cstdio>
#include<algorithm>
#include<iomanip>
#include<cstring>
#include<string>
#include<cmath>
#include<stack>
#include<queue>
#include<vector>
#include<set>
#include<map>
using namespace std;
typedef long long ll;
const int inf=0x3f3f3f3f;//1061109567
const int INF=0x7fffffff;//2147483647
const int SUP=0x80000000;//-2147483648
#define MAX 1000000
int main()
{
char a[1005];
int arr[1005];
while(cin>>a)
{
int i;
char *pos=strtok(a,"5");
for(i=0;pos!=NULL;i++)
{
arr[i]=atoi(pos);
//cout<<arr[i]<<endl;
pos=strtok(NULL,"5");
}
sort(arr,arr+i);
//cout<<i<<endl;
cout<<arr[0];
for(int j=1;j<i;j++)
cout<<" "<<arr[j];
cout<<endl;
}
return 0;
}