Cod sursa(job #827140)

Utilizator BeilandArnoldArnold Beiland BeilandArnold Data 1 decembrie 2012 17:42:29
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>

int main(){
    std::ifstream fin("ordine.in");
    std::ofstream fout("ordine.out");
    unsigned nrchars[26] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
    char c; fin.get(c);
    while(fin.good()&&c!='\n'){
        nrchars[c-'a']++;
        fin.get(c);
    }
    unsigned previd=100;
    bool pr;
    for(;;){
        pr=false;
        for(unsigned i=0;i<26;++i)
            if(nrchars[i]&&i!=previd){
                nrchars[i]--;
                fout<<static_cast<char>(i+'a');
                previd=i;
                pr=true;
                break;
            }
        if(!pr) break;
    }
    fout<<'\n';
}