Cod sursa(job #155534)

Utilizator MarcvsHdrMihai Leonte MarcvsHdr Data 11 martie 2008 23:28:31
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
# include <stdio.h>
# include <string.h>

const long int MAXN=1000000;
long int count[100],n;

void citire()
{
char s[MAXN+10];
FILE *f=fopen("ordine.in","r");
fgets(s,MAXN,f);
fcloseall();
long int i=strlen(s)-2;
n=i+1;
while (i>=0)
	{
	count[(int)s[i]-(int)'a'+1]++;
	i--;
	}
}

void scrie()
{
FILE *g=fopen("ordine.out","w");
long int old=0,i;
while (n)
	{
	for (i=1;!(count[i]&&old!=i);i++);
	old=i;
	count[i]--;
	fprintf(g,"%c",(char)((int)'a'+i-1));
	n--;
	}
fprintf(g,"\n");
fcloseall();
}

int main()
{
citire();
scrie();
return 0;
}