Pagini recente » Cod sursa (job #206760) | Cod sursa (job #509786) | Cod sursa (job #1101279) | Cod sursa (job #995241) | Cod sursa (job #109376)
Cod sursa(job #109376)
#include <stdio.h>
#include <string.h>
int d[30],n,z;
char a[1000020];
int main()
{
freopen("ordine.in","r",stdin);
freopen("ordine.out","w",stdout);
fgets(a,1000000,stdin);
n=strlen(a);
int i,j;
z=0;
for (i=0; i<n-1; ++i)
++d[a[i]-'a'+1];
for (i=1; i<=26; ++i)
{
while (d[i]>0)
{
j=i;
++z;
a[z]=i+'a'-1;
--d[i];
if (d[i]>0)
{
++z;
while (1)
{
++j;
if (d[j]>0)
{
a[z]=j+'a'-1;
--d[j];
j=i;
break;
}
}
}
}
}
printf("%s\n",a+1);
return 0;
}