Pagini recente » Cod sursa (job #497131) | Cod sursa (job #528463) | Cod sursa (job #3276716) | Cod sursa (job #2754695) | Cod sursa (job #340004)
Cod sursa(job #340004)
# 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;
}