最近在学java,用java刷刷水题,发现有道提交过却没A的水题,于是做了一下。
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
#include <cstring>
using namespace std;
int len;
int cnt;
__int64 ans[1111];
char str[1111];
int getnum(int k){
__int64 num=0;
int i=k;
//cout<<"i ="<<i<<endl;
while(i<len&&str[i]!='5')
{
num*=(__int64)10;
num+=(__int64)(str[i]-'0');
i++;
}
ans[cnt++]=num;
//cout<<num<<endl;
return i;
}
int main()
{
while(scanf("%s",str)!=EOF)
{
cnt=0;
len=strlen(str);
int i=0;
while(i<len)
{
if(str[i]!='5')
{
i=getnum(i);
}
else
{
i++;
}
}
sort(ans,ans+cnt);
if(cnt)
{
for(int i=0;i<cnt-1;i++)
{
cout<<ans[i]<<" ";
}
cout<<ans[cnt-1]<<endl;
}
else
{
cout<<endl;
}
}
}