Pagini recente » Cod sursa (job #2064886) | Cod sursa (job #2375854) | Cod sursa (job #2443286) | Cod sursa (job #634935) | Cod sursa (job #130383)
Cod sursa(job #130383)
#include <fstream>
#include <string.h>
#define NMax 1000005
char a[NMax],b[NMax];
int lit[30];
std::ifstream f( "ordine.in" );
std::ofstream g( "ordine.out" );
int main()
{
int i, j, lg;
f >> a;
lg = strlen(a);
for (i=0; i<lg; i++)
lit[((int)a[i])-'a']++;
for (j=0; j<30; j++)
if ( lit[j] > 0 )
{
b[0] = j+'a';
lit[j]--;
break;
}
for (i=1; i<lg; i++)
for (j=0; j<30; j++)
if (lit[j] > 0 && b[i-1] != (char)(j+'a') )
{
b[i] = j+'a';
lit[j]--;
break;
}
b[lg] = NULL;
g << b << '\n';
return 0;
}