Cod sursa(job #201375)

Utilizator ProcopliucProcopliuc Adrian Procopliuc Data 30 iulie 2008 23:23:39
Problema Ordine Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
# include <stdio.h>
# include <string.h>
int i,ok,fr[300],x,n,k,l;
char ch,c,c2,c3;
int main ()
{
freopen ("ordine.in","r",stdin);
freopen ("ordine.out","w",stdout);
while (scanf ("%c",&ch)!=EOF)
{
x=ch;
fr[x-97]++;
n++;
}
n--;
while (ok==0)
{
ok=1;
i=0;
if (l==0)
{
for (i=0;i<26;i++)
if (fr[i]==(n-k)/2)
{
c3=i+97;
l=1;
break;
}
}
i=0;
while (i<26)
{
c2=i+97;
if (fr[i]!=0 && c!=c2 && c2!= c3)
{

ok=0;
fr[i]--;
k++;
c=i+97;
printf ("%c",c);
if (l==1 && fr[c3-97]!=0)
{
printf ("%c",c3);
fr[c3-97]--;
c=0;
k++;
}
break;
}

i++;
}
}
return 0;
}