#include<iostream>
#include<string>
using std::string;
using namespace std;
const int MAX_NUM=1000;
void merge(long num[],int n);
int main()
{
string str;
while(cin>>str)
{
int len=str.size();
long num[MAX_NUM];
int i=0,j,temp;
for(j=0;j<MAX_NUM;j++)
num[j]=0;
for(j=0;j<len;)
{
temp=str[j]-'0';
if(temp!=5)
{
num[i]=num[i]*10+temp;
j++;
}
else
{
if(j)
i++;
while(str[j]=='5')
j++;
if(j>len-1)
i--;
}
}
merge(num,i+1);
cout<<num[0];
for(j=1;j<=i;j++)
cout<<" "<<num[j];
cout<<endl;
}
return 0;
}
void merge(long num[],int n)
{
long temp;
int k;
for(int i=0;i<n;i++)
{
k=i;
temp=num[i];
for(int j=i;j<n;j++)
if(num[k]>num[j])
k=j;
if(k!=i)
{
num[i]=num[k];
num[k]=temp;
}
}
}
输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以‘0’开头,这些头部的‘0’应该被忽略掉,除非这个整数就是由若干个‘0’组成的,这时这个整数
最新推荐文章于 2022-02-07 14:46:27 发布
本文介绍了一个基于C++实现的字符串处理程序,该程序能够读取输入的字符串,并通过特定的逻辑处理数字字符,最终输出排序后的数字序列。具体而言,程序会忽略数字5,并将相邻非5数字组合成整数进行排序。
2675

被折叠的 条评论
为什么被折叠?



