Cod sursa(job #204746)

Utilizator mordredSimionescu Andrei mordred Data 26 august 2008 19:24:34
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <stdio.h>
#include <string.h>

int n,a[32],i,x,prev,out;
char text[1000002],output[1000002];

int main(){
 freopen("ordine.in","r",stdin);
 freopen("ordine.out","w",stdout);
 
 scanf("%s",text);
 
 for(i=0;i<strlen(text);++i){
 ++a[text[i]-'a'+1];}
 
 n = strlen(text)+1;
 while(n)
    {
    for(i=1;i<27;++i)
        if(a[i] == n/2+1)
            {
            x=i; break;
            }
    for(i=1;i<=27;++i)
        if(a[i]&&x!=i)
            {
            x=i; break;
            }
    printf("%c",x+'a'-1);
    a[x]--;prev = x;--n;
    }
 
 return 0;
}