Pagini recente » Cod sursa (job #2455689) | Cod sursa (job #22612) | Cod sursa (job #1112249) | Cod sursa (job #1194051) | Cod sursa (job #488111)
Cod sursa(job #488111)
#include<cstdio>
const int N=1<<20;
char s[N];
int len,apar[31];
int main()
{
freopen("ordine.in","r",stdin);
freopen("ordine.out","w",stdout);
gets(s);
int i,ant=666,k;
for (i=0;s[i]>='a';++i) apar[s[i]-'a']++;
len=i;
for (int i=0;i<=len;++i)
{
k=0;
for (int j=0;j<26;++j) if (apar[j]==(len-i+1)/2+1 && j!=ant) k=j;
if (k!=0)
{
printf("%c",'a'+k);
apar[k]--, ant=k;
}
else
for (int j=0;j<26;++j)
if (apar[j] && j!=ant)
{
printf("%c",'a'+j);
apar[j]--,ant=j;
break;
}
}
printf("\n");
return 0;
}