Cod sursa(job #786706)

Utilizator icb_mnStf Cic icb_mn Data 11 septembrie 2012 21:43:48
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream>
#include<stdio.h>
using namespace std;

ifstream f("ordine.in");
ofstream g("ordine.out");

#define NMAX 1000000

int x[NMAX] = {0};
char c[NMAX];
	
void ordine()
{
	f>>c;
	
	int lg = strlen(c);
	
	for(int i = 0; i < lg; ++i)
		x[i] = int(c[i]);
	
	sort(x,x + lg);
	
	for(int i = 0; i < lg; ++i)
		c[i]= char(x[i]);
	
	for(int i = 1; i < lg; ++i)
	{
		if(c[i] == c[i - 1])
			for(int j = i + 1; j < lg; ++j)
			{
				if(c[j] != c[i])
				{
					char aux = c[j];
					c[j] = c[i];
					c[i] = aux;
					break;
				}
			}
	}
	
	for(int i = 0; i < lg; ++i)
		g<<c[i];
	
}

int main()
{
	ordine();
	
	g.close();
	
	
	return 0;
}