Cod sursa(job #303439)
| Utilizator | Data | 9 aprilie 2009 20:44:59 | |
|---|---|---|---|
| Problema | Ordine | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 1.05 kb |
#include <stdio.h>
int frec[30];
int i,deseu,j,n,k=1;
char x;
int main ()
{
freopen ("ordine.in","r",stdin);
freopen ("ordine.out","w",stdout);
while (!feof(stdin)){
scanf ("%c",&x);
if (x=='\n') break;
frec[x-96]++;
n++;
}
while (k<=n){
for (i=1;i<=26;i++)
if (frec[i]==(n-k+1)/2+1){
frec[i]--;
deseu=i+96;
printf ("%c",deseu);
k++;
break;
}
for (i=1;i<=26;i++)
if (frec[i]>0 && i!=deseu-96){
deseu=i+96;
frec[i]--;
printf ("%c",deseu);
k++;
break;
}
}
return 0;
}
