Cod sursa(job #343971)

Utilizator raica_cristiraica dumitru cristian raica_cristi Data 27 august 2009 22:20:54
Problema Ordine Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<stdio.h>
#include<string.h>

int a[26] , n , i , nr , u ;

int main ()
{
    freopen("ordine.in","r",stdin);
   freopen("ordine.out","w",stdout);
    char k;
    u=-1;
    while(scanf("%c",&k)==1)
                            if('a'<=k && 'z'>=k)
                           {
                                    nr++;
                                    a[k-'a']++; 
                                    }
    int o=nr;
    for( int p=0 ; p<=nr ; p++)
    {int el=-1;
         for( i=0 ; i<=25 ; i++ )
    if(a[i]>o/2 && u!=i)
    {
                 printf("%c",i+'a',i),a[i]--,u=i,o--;
                 el=0;
                  break;
                  }
                  if(el==0)
                  continue;
    for( i=0 ; i<=25 ; i++ )
    if(a[i] && u!=i)
    {
             printf("%c",i+'a'),a[i]--,u=i,o--;
              break;
              }
}
printf("\n");
return 0;
}