Cod sursa(job #780368)
Utilizator | Data | 20 august 2012 13:52:31 | |
---|---|---|---|
Problema | Ordine | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <stdio.h>
#include <string.h>
int n,a[32],i,x,prev,k;
char text[1000002];
int main(){
freopen("ordine.in","r",stdin);
freopen("ordine.out","w",stdout);
scanf("%s",text);
n=strlen(text);
for(i=0;i<n;++i){
++a[text[i]-'a'+1];}
while(n)
{
for(i=1,k=1;i<27&&k;++i)
if(a[i] == n/2+1)
x=i, k=0;
for(i=1;i<=27&&k;++i)
if(a[i]&&x!=i)
x=i, k=0;
printf("%c",x+'a'-1);
--a[x];prev = x;--n;
}
return 0;
}