Pagini recente » Cod sursa (job #2676714) | Cod sursa (job #1888403) | Cod sursa (job #312045) | Cod sursa (job #174830) | Cod sursa (job #340003)
Cod sursa(job #340003)
# include <stdio.h>
# include <string>
using namespace std;
# define FIN "ordine.in"
# define FOUT "ordine.out"
# define MAXN 1000010
char s[MAXN];
int a[80];
int i,aux;
char j,pred,succ;
int main()
{
freopen(FIN,"r",stdin);
freopen(FOUT,"w",stdout);
scanf("%s",s+1);
aux = strlen(s+1);
for (i = 1; i <= aux; ++i)
a[s[i]-'0']++;
pred = ' ';
for (i = 1; i <= aux; ++i)
{
succ = 'z';
for (j = 'a'; j <= 'z'; ++j)
if (a[j-'0']==(aux-i+1)/2+1)
{
succ = j;
break;
}
else
if (a[j-'0']!=0&&j!=pred&&j<succ) succ = j;
printf("%c",succ);
a[succ-'0']--;
pred = succ;
}
return 0;
}