Pagini recente » Cod sursa (job #2870779) | Cod sursa (job #110734)
Cod sursa(job #110734)
#include <stdio.h>
int f[27], n;
int main()
{
int i, s, ex = 1, l = 0;
char c, uc = 0;
freopen("ordine.in", "r", stdin);
freopen("ordine.out", "w", stdout);
while ( scanf("%c", &c)!=EOF )
{
f[c-'a']++;
n++;
}
while (ex)
{
s = n/2+1;
for ( i = 0; i <= 25 && !l; i++)
if ( s == f[i])
l = i;
if ( l )
{
while ( f[l] )
{
printf("%c", l+'a');
f[l]--;
i = 0;
while ( (f[i]==0 || i == l) && i <= 25 )
i++;
if ( i <= 25)
{
printf("%c", i+'a');
f[i]--;
}
}
ex = 0;
}
else
{
i = 0;
while ( (f[i] == 0 || i+'a'== uc) && i <= 25)
i++;
if ( i <=25)
{
uc = i + 'a';
printf("%c", uc);
f[i]--;
n--;
}
else
ex = 0;
}
}
return 0;
}