Cod sursa(job #109307)

Utilizator pirvupirvu tudor pirvu Data 25 noiembrie 2007 10:08:42
Problema Ordine Scor 0
Compilator cpp Status done
Runda preONI 2008, Runda 1, Clasele 5-8 Marime 0.78 kb
#include<string.h>
#include<stdio.h>
#include<mem.h>

unsigned int  lit[100];
long n,l;
int k,kk;
char lit2[90];

int main ()

{

char s[60000];

freopen("ordine.in","r",stdin);
freopen("ordine.out","w",stdout);

gets(s);

n=strlen(s);

for (long i=0;i<=n;i++)

 lit[s[i]-'a']++;

if (lit[0]!=0)

{

char v='a';

printf("%c",v);

lit[0]--;

lit2[0]=1;

l++;

}

i=1;


do
{

if (lit2[i-1]!=1 && lit[i-1]!=0)

{

char v=i+'a'-1;

printf("%c",v);

memset(lit2,0,sizeof(lit2));

lit2[i-1]=1;

lit[i-1]--;

l++;

}

else

if (lit2[i]!=1 && lit[i]!=0)

{

char v=i+'a';

printf("%c",v);

memset(lit2,0,sizeof(lit2));

lit[i]--;

lit2[i]=1;

l++;

}

if (lit[i-1]==0) i++;



}
while (l!=n);

return 0;

}