Cod sursa(job #1803529)

Utilizator SirbuSirbu Ioan Sirbu Data 11 noiembrie 2016 16:07:52
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <fstream>
#include <string.h>

using namespace std;
ifstream fin ("ordine.in");
ofstream fout ("ordine.out");

char s[1000005];
int ap[30];

int main()
{

    fin >> s;
    int nr=strlen(s);
    for (int i=0;i<nr;i++)
        ap[s[i]-'a']++;

    for (int j=0;j<26;j++) if (ap[j]) {s[0]=j+'a'; ap[j]--; break;}
    for (int i=1;i<nr;i++)
        for (int j=0;j<26;j++)
            if (ap[j] && (s[i-1]!=j+'a')) {s[i]=j+'a'; ap[j]--; break;}
    fout << s << "\n";

}