#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[100000],b[100000];
while(gets(a))
{
int n=0;
for(int i=0; i<strlen(a); i++)
{
if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))
{
b[n++]=a[i];
}
}
int flag=1;
for(int i=0; i<n&&flag; i++)
{
flag=0;
for(int j=n-1; j>i; j--)
{
char a1=(b[j]>='A'&&b[j]<='Z')?b[j]-'A'+'a':b[j];
char b1=(b[j-1]>='A'&&b[j-1]<='Z')?b[j-1]-'A'+'a':b[j-1];
if(a1<b1)
{
int temp=b[j];
b[j]=b[j-1];
b[j-1]=temp;
flag=1;
}
}
}
n=0;
for(int i=0; i<strlen(a); i++)
{
if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))
a[i]=b[n++];
}
for(int i=0; i<strlen(a); i++)
cout<<a[i];
cout<<endl;
}
return 0;
}
字符串排序(华为特殊规则)
最新推荐文章于 2022-11-27 11:33:01 发布