Cod sursa(job #127205)

Utilizator slayer4uVictor Popescu slayer4u Data 23 ianuarie 2008 16:35:14
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <stdio.h>
#include <string.h>

long i, j, n, count[30], rez[10000];
char s[10000];

int main()
{
	freopen ("ordine.in", "rt", stdin);
	freopen ("ordine.out", "wt", stdout);

	fgets(s, 10000, stdin);

	n = strlen(s) - 2;

	for (i = 0; i <= n; i ++)
		count[s[i] - 'a']++;

	for (j = 0; j<= 25; j ++)
		if (count[j])
		{
			rez[0] = j;
			count[j] --;
			break;
		}
	for (i = 1; i <= n; i ++)
	{
		for (j = 0; j <= 25; j ++)
			if (count[j] && j != rez[i - 1])
			{
				rez[i] = j;
				count[j] --;
				break;
			}
	}

	for (i = 0; i <= n; i ++)
		printf("%c", rez[i] + 'a');

	return 0;
}